16 #ifndef OPENKALMAN_COLLECTIONS_SIZE_OF_HPP 17 #define OPENKALMAN_COLLECTIONS_SIZE_OF_HPP 31 template<
typename T,
typename =
void>
42 sized<T> and not values::fixed<decltype(collections::get_size(std::declval<T>()))>>>
44 : std::integral_constant<std::size_t, stdex::dynamic_extent> {};
48 template<sized T> requires values::fixed<decltype(collections::get_size(std::declval<T>()))>
Namespace for collections.
Definition: collections.hpp:27
constexpr auto get_size(Arg &&arg)
Get the size of a sized object (e.g, a collection)
Definition: get_size.hpp:224
Header file for code relating to values (e.g., scalars and indices)
The size of a sized object (including a collection).
Definition: size_of.hpp:33
The fixed value associated with a fixed.
Definition: fixed_value_of.hpp:44
Definition for collections::sized.
Definition for collections::get_size.
std::conditional_t< sized< T >, size_of< T >, values::unbounded_size_t > size_of_t
The type of the argument's size, which will satisfy values::size.
Definition: size_of.hpp:69
A type reflecting an unbound size.
Definition: size.hpp:27
constexpr bool fixed
T has a value that is determinable at compile time.
Definition: fixed.hpp:65
constexpr std::size_t size_of_v
Helper for collections::size_of.
Definition: size_of.hpp:62