If the specified type is iteratable, the class inherits members of std::iterator_traits specialized for the iterator of the specified type. More...
#include <chsvmetafun.h>
Public Types | |
using | iterator = decltype(std::begin(std::declval< std::add_lvalue_reference_t< T > >())) |
A type of an iterator of the iteratable type. | |
If the specified type is iteratable, the class inherits members of std::iterator_traits specialized for the iterator of the specified type.
T | A type whose traits are examined. |
A type T
is iteratable, if, given an object t
of the type T
, the expressions std::begin(t)
and std::end(t)
are valid and returns an object of a type I
, which satisfies the Iterator requirements.
T
is iteratable, if is_iteratable_type_v<T> yields true
.
If T
is not iteratable, the corresponding specialization of iteratable_type_traits
has no members or parent classes.