44 typename T::value_type;
45 typename T::index_type;
53 requires std::movable<std::remove_const_t<T>>;
59 { T::dim() } -> std::same_as<uint32_t>;
65 requires (!
requires {
typename T::reference; } &&
66 requires { { t[vec] } -> std::same_as<typename T::value_type>;})
67 ||
requires {
typename T::reference; };
74 (T::dim() == 1u && !
requires {
typename T::reference; } &&
75 requires {{ t[0] } -> std::same_as<typename T::value_type>; })
76 ||
requires {
typename T::reference; };