template <typename... Columns>
table_traits struct
Traits for a table.
| Template parameters | |
|---|---|
| Columns | The types and/or soagen:: |
Public types
-
template <auto Index>using column = type_
at_ index<static_ cast<size_ t>(Index), detail::as_column<Columns>...> - Returns the soagen::
column_traits for the column at the specified index. -
template <typename IndexConstant>using column_from_ic = type_
at_ index<static_ cast<size_ t>(remove_ cvref<IndexConstant>::value), detail::as_column<Columns>...> - Same as column but takes an index_
constant.
Public static variables
-
static constexpr
size_
t aligned_stride constexpr - The number of rows to advance to maintain the requested
alignmentfor every column. -
static constexpr
size_
t column_alignments constexpr - Array containing the
alignmentfor each column. -
static constexpr
size_
t column_count constexpr - The number of columns in the table.
-
template <typename BackingTable, typename... Args>static constexpr bool emplace_back_is_nothrow constexpr
- True if a generated class's
emplace_back()would be nothrow. -
template <typename BackingTable, typename... Args>static constexpr bool emplace_is_nothrow constexpr
- True if a generated class's
emplace()would be nothrow. -
template <typename BackingTable>static constexpr bool insert_is_nothrow constexpr
- True if a generated class's lvalue
insert()would be nothrow. -
static constexpr
size_
t largest_alignment constexpr - The max
alignmentof all columns in the table. -
template <typename BackingTable>static constexpr bool push_back_is_nothrow constexpr
- True if a generated class's lvalue
push_back()would be nothrow. -
template <typename BackingTable, typename Row>static constexpr bool row_insert_is_nothrow constexpr
- True if a generated class's row
insert()would be nothrow. -
template <typename BackingTable, typename Row>static constexpr bool row_push_back_is_nothrow constexpr
- True if a generated class's row
push_back()would be nothrow. -
template <typename BackingTable>static constexpr bool rvalue_insert_is_nothrow constexpr
- True if a generated class's rvalue
insert()would be nothrow. -
template <typename BackingTable>static constexpr bool rvalue_push_back_is_nothrow constexpr
- True if a generated class's rvalue
push_back()would be nothrow. - static constexpr bool rvalues_are_distinct constexpr
- True if the arguments passed to the rvalue overloads of
push_back()andinsert()would be distinct from the regular const lvalue overload.
Variable documentation
template <typename... Columns>
static constexpr
size_ t soagen::table_traits::aligned_stride constexpr
The number of rows to advance to maintain the requested alignment for every column.
The stride size you need to use when iterating through rows of this table such that the starting element for each batch in each column would have the same memory alignment as the value specified for the column-specific alignment.
static constexpr bool soagen::table_traits::emplace_back_is_nothrow constexpr
True if a generated class's emplace_back() would be nothrow.
| Template parameters | |
|---|---|
| Args | The args being passed to soagen:: |
static constexpr bool soagen::table_traits::emplace_is_nothrow constexpr
True if a generated class's emplace() would be nothrow.
| Template parameters | |
|---|---|
| Args | The args being passed to soagen:: |