chsvlib
chsv helper source code
iteratable_type_traits< T > Struct Template Reference

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>

Inheritance diagram for iteratable_type_traits< T >:
Collaboration diagram for iteratable_type_traits< T >:

Public Types

using iterator = decltype(std::begin(std::declval< std::add_lvalue_reference_t< T > >()))
 A type of an iterator of the iteratable type.
 

Detailed Description

template<class T>
struct Chusov::iteratable_type_traits< T >

If the specified type is iteratable, the class inherits members of std::iterator_traits specialized for the iterator of the specified type.

Template Parameters
TA 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.


The documentation for this struct was generated from the following file: