Shortcuts

Typedef ripple::array_impl_t

Typedef Documentation

template<typename ImplA, typename ImplB, typename LayoutA = typename array_traits_t<ImplA>::Layout, typename LayoutB = typename array_traits_t<ImplB>::Layout, bool ValidityA = std::is_same_v<LayoutA, ContiguousOwned>, bool ValidityB = std::is_same_v<LayoutB, ContiguousOwned>, typename Fallback = VecFallback<ImplA>>
using ripple::array_impl_t = std::conditional_t<ValidityA, ImplA, std::conditional_t<ValidityB, ImplB, Fallback>>

Returns an implementation type which is copyable and trivially constructable between implementations ImplA and ImplB.

This will first check the valididy of ImplA, and then of ImplB.

An implementation is valid if the storage type of the implementation is not a pointer (since the data for the pointer will then need to be allocaed) and is trivially constructible.

If neither ImplA nor ImplB are valid, then this will default to using the Vec type with a value type of ImplA and a the size of ImplA.

Template Parameters
  • ImplA: The type of the first array implementation.

  • ImplB: The type of the second array implementation.

Docs

Access comprehensive developer documentation for Ripple

View Docs

Tutorials

Get tutorials to help with understand all features

View Tutorials

Examples

Find examples to help get started

View Examples