Concept for layouts.
More...
#include <layout_concept.hpp>
template<class T>
typename T::inner_value_type;
typename T::value_type;
typename T::const_reference;
typename T::size_type;
typename T::const_iterator;
typename T::const_reverse_iterator;
{ t[std::size_t()] } -> std::same_as<typename T::const_reference>;
{ t.size() } -> std::same_as<typename T::size_type>;
{ t.begin() } -> std::same_as<typename T::const_iterator>;
{ t.end() } -> std::same_as<typename T::const_iterator>;
{ t.cbegin() } -> std::same_as<typename T::const_iterator>;
{ t.cend() } -> std::same_as<typename T::const_iterator>;
{ t.rbegin() } -> std::same_as<typename T::const_reverse_iterator>;
{ t.rend() } -> std::same_as<typename T::const_reverse_iterator>;
{ t.crbegin() } -> std::same_as<typename T::const_reverse_iterator>;
{ t.crend() } -> std::same_as<typename T::const_reverse_iterator>;
}
Concept for layouts.
A layout is an implementation of one of the Apache Arrow Layouts defined at https://arrow.apache.org/docs/format/Columnar.html#
It provides an API similar to that of a constant linear standard container, with additional requirements on the access operator.
- Parameters
-
Definition at line 41 of file layout_concept.hpp.