Template Struct StorageDescriptor¶
Defined in File storage_descriptor.hpp
Struct Documentation¶
-
template<typename
Layout
, typename ...Ts
>
structripple
::
StorageDescriptor
¶ The StorageDescriptor class can be used to define the types to store.
This is an empty struct, and is just used to wrap the layout kind and types so that it can be specialized for specific traits.
- Template Parameters
Layout
: The layout for the data.Ts
: The types to store.
Public Types
-
using
ContigView
= ContiguousStorageView<Ts...>¶ Defines the type of contigous view storage.
-
using
StridedView
= StridedStorageView<Ts...>¶ Defines the type of strided view storage.
-
using
Owned
= OwnedStorage<Ts...>¶ Defines the type of owned storage.
-
using
Storage
= std::conditional_t<is_contiguous, ContigView, std::conditional_t<is_strided, StridedView, Owned>>¶ Defines which type of storage to use, based on the type of the layout.
Public Static Attributes
-
constexpr LayoutKind
layout
= Layout::value¶ Defines the type of the layout for the descriptor.
-
constexpr bool
is_strided
= (layout == LayoutKind::strided_view)¶ Defines if the storage is strided.
-
constexpr bool
is_contiguous
= (layout == LayoutKind::contiguous_view)¶ Defines if the storage is contiguous.