3#ifndef TETL_ITERATOR_INDIRECTLY_READABLE_TRAITS_HPP
4#define TETL_ITERATOR_INDIRECTLY_READABLE_TRAITS_HPP
17struct maybe_value_type { };
21struct maybe_value_type<T> {
26concept has_member_value_type =
requires {
typename T::value_type; };
29concept has_member_element_type =
requires {
typename T::element_type; };
48template <detail::has_member_value_type T>
51template <detail::has_member_element_type T>
54template <detail::has_member_value_type T>
55 requires detail::has_member_element_type<T>
56struct indirectly_readable_traits<T> { };
58template <detail::has_member_value_type T>
Definition adjacent_find.hpp:8
remove_const_t< remove_volatile_t< T > > remove_cv_t
Definition remove_cv.hpp:22
constexpr bool is_object_v
Definition is_object.hpp:35
constexpr bool is_array_v
Definition is_array.hpp:26
etl::remove_cv_t< etl::remove_extent_t< I > > value_type
Definition indirectly_readable_traits.hpp:45
Definition indirectly_readable_traits.hpp:34