16 #ifndef OPENKALMAN_MAX_TENSOR_ORDER_HPP 17 #define OPENKALMAN_MAX_TENSOR_ORDER_HPP 25 template<std::
size_t i,
typename T>
26 constexpr std::size_t max_tensor_order_impl(std::size_t result = 0)
28 if constexpr (i == 0) return result;
31 else return max_tensor_order_impl<i - 1, T>(result + 1);
46 template<
typename T,
typename =
void>
49 : std::integral_constant<std::size_t, indexible<T> ? stdex::dynamic_extent : 0> {};
53 template<
typename T> requires (index_count_v<T> != std::dynamic_extent)
59 : std::integral_constant<std::size_t, detail::max_tensor_order_impl<index_count_v<T>, T>()> {};
The maximum number of indices of structure T of size other than 1 (including any dynamic indices)...
Definition: max_tensor_order.hpp:48
Definition for dimension_size_of_index_is.
The root namespace for OpenKalman.
Definition: basics.hpp:34
constexpr bool dimension_size_of_index_is
Specifies that a given index of T has a specified size.
Definition: dimension_size_of_index_is.hpp:35