|
|
template<typename I > |
| using | OpenKalman::stdex::iter_value_t = typename detail::iter_value_impl< stdex::remove_cvref_t< I > >::value_type |
| |
|
template<typename I > |
| using | OpenKalman::stdex::iter_reference_t = decltype(*std::declval< I & >()) |
| |
|
template<typename I > |
| using | OpenKalman::stdex::iter_difference_t = typename detail::iter_difference_impl< stdex::remove_cvref_t< I > >::difference_type |
| |
|
template<typename I > |
| using | OpenKalman::stdex::iter_rvalue_reference_t = decltype(std::move(*std::declval< I & >())) |
| |
|
template<typename T , std::enable_if_t< indirectly_readable< T >, int > = 0> |
| using | OpenKalman::stdex::iter_common_reference_t = stdex::common_reference_t< iter_reference_t< T >, iter_value_t< T > & > |
| |
|
template<typename T , std::enable_if_t< indirectly_readable< T >, int > = 0> |
| using | OpenKalman::stdex::iter_const_reference_t = stdex::common_reference_t< const iter_value_t< T > &&, iter_reference_t< T > > |
| |
|
|
template<typename T > |
| constexpr bool | OpenKalman::stdex::detail_indirectly_readable::has_member_value_type = has_member_value_type_impl<T>::value |
| |
|
template<typename T > |
| constexpr bool | OpenKalman::stdex::detail_indirectly_readable::has_member_element_type = has_member_element_type_impl<T>::value |
| |
|
template<typename I > |
| constexpr bool | OpenKalman::stdex::indirectly_readable = detail::is_indirectly_readable<stdex::remove_cvref_t<I>>::value |
| |
|
template<typename Out , typename T > |
| constexpr bool | OpenKalman::stdex::indirectly_writable = detail::is_indirectly_writable<Out, T>::value |
| |
|
template<typename I > |
| constexpr bool | OpenKalman::stdex::weakly_incrementable = detail::is_weakly_incrementable<I>::value |
| |
|
template<typename I > |
| constexpr bool | OpenKalman::stdex::input_or_output_iterator = detail::is_input_or_output_iterator<I>::value and weakly_incrementable<I> |
| |
| template<typename I > |
| constexpr bool | OpenKalman::stdex::input_iterator |
| |
| template<typename I , typename T > |
| constexpr bool | OpenKalman::stdex::output_iterator |
| |
| template<typename I > |
| constexpr bool | OpenKalman::stdex::incrementable |
| |
| template<typename I > |
| constexpr bool | OpenKalman::stdex::forward_iterator |
| |
| template<typename I > |
| constexpr bool | OpenKalman::stdex::bidirectional_iterator |
| |
| template<typename S , typename I > |
| constexpr bool | OpenKalman::stdex::sentinel_for |
| |
| template<typename S , typename I > |
| constexpr bool | OpenKalman::stdex::sized_sentinel_for |
| |
| template<typename I > |
| constexpr bool | OpenKalman::stdex::random_access_iterator |
| |
|
constexpr unreachable_sentinel_t | OpenKalman::stdex::unreachable_sentinel {} |
| |
| template<typename In , typename Out > |
| constexpr bool | OpenKalman::stdex::indirectly_copyable |
| |