nil::crypto3::detail::is_iterator< T > Struct Template Reference

#include <type_traits.hpp>

+ Collaboration diagram for nil::crypto3::detail::is_iterator< T >:

Static Public Member Functions

static char test (...)
 
static char test (...)
 
static char test (...)
 
static char test (...)
 
static char test (...)
 
static char test (...)
 
static char test (...)
 
static char test (...)
 
static char test (...)
 
static char test (...)
 
static char test (...)
 
static char test (...)
 
template<typename U , typename = typename std::iterator_traits<U>::difference_type, typename = typename std::iterator_traits<U>::pointer, typename = typename std::iterator_traits<U>::reference, typename = typename std::iterator_traits<U>::value_type, typename = typename std::iterator_traits<U>::iterator_category>
static long test (U &&)
 
template<typename U , typename = typename std::iterator_traits<U>::difference_type, typename = typename std::iterator_traits<U>::pointer, typename = typename std::iterator_traits<U>::reference, typename = typename std::iterator_traits<U>::value_type, typename = typename std::iterator_traits<U>::iterator_category>
static long test (U &&)
 
template<typename U , typename = typename std::iterator_traits<U>::difference_type, typename = typename std::iterator_traits<U>::pointer, typename = typename std::iterator_traits<U>::reference, typename = typename std::iterator_traits<U>::value_type, typename = typename std::iterator_traits<U>::iterator_category>
static long test (U &&)
 
template<typename U , typename = typename std::iterator_traits<U>::difference_type, typename = typename std::iterator_traits<U>::pointer, typename = typename std::iterator_traits<U>::reference, typename = typename std::iterator_traits<U>::value_type, typename = typename std::iterator_traits<U>::iterator_category>
static long test (U &&)
 
template<typename U , typename = typename std::iterator_traits<U>::difference_type, typename = typename std::iterator_traits<U>::pointer, typename = typename std::iterator_traits<U>::reference, typename = typename std::iterator_traits<U>::value_type, typename = typename std::iterator_traits<U>::iterator_category>
static long test (U &&)
 
template<typename U , typename = typename std::iterator_traits<U>::difference_type, typename = typename std::iterator_traits<U>::pointer, typename = typename std::iterator_traits<U>::reference, typename = typename std::iterator_traits<U>::value_type, typename = typename std::iterator_traits<U>::iterator_category>
static long test (U &&)
 
template<typename U , typename = typename std::iterator_traits<U>::difference_type, typename = typename std::iterator_traits<U>::pointer, typename = typename std::iterator_traits<U>::reference, typename = typename std::iterator_traits<U>::value_type, typename = typename std::iterator_traits<U>::iterator_category>
static long test (U &&)
 
template<typename U , typename = typename std::iterator_traits<U>::difference_type, typename = typename std::iterator_traits<U>::pointer, typename = typename std::iterator_traits<U>::reference, typename = typename std::iterator_traits<U>::value_type, typename = typename std::iterator_traits<U>::iterator_category>
static long test (U &&)
 
template<typename U , typename = typename std::iterator_traits<U>::difference_type, typename = typename std::iterator_traits<U>::pointer, typename = typename std::iterator_traits<U>::reference, typename = typename std::iterator_traits<U>::value_type, typename = typename std::iterator_traits<U>::iterator_category>
static long test (U &&)
 
template<typename U , typename = typename std::iterator_traits<U>::difference_type, typename = typename std::iterator_traits<U>::pointer, typename = typename std::iterator_traits<U>::reference, typename = typename std::iterator_traits<U>::value_type, typename = typename std::iterator_traits<U>::iterator_category>
static long test (U &&)
 
template<typename U , typename = typename std::iterator_traits<U>::difference_type, typename = typename std::iterator_traits<U>::pointer, typename = typename std::iterator_traits<U>::reference, typename = typename std::iterator_traits<U>::value_type, typename = typename std::iterator_traits<U>::iterator_category>
static long test (U &&)
 
template<typename U , typename = typename std::iterator_traits<U>::difference_type, typename = typename std::iterator_traits<U>::pointer, typename = typename std::iterator_traits<U>::reference, typename = typename std::iterator_traits<U>::value_type, typename = typename std::iterator_traits<U>::iterator_category>
static long test (U &&)
 

Static Public Attributes

constexpr static bool value = std::is_same<decltype(test(std::declval<T>())), long>::value
 

Member Function Documentation

◆ test() [1/24]

template<typename T >
static char nil::crypto3::detail::is_iterator< T >::test (   ...)
static

◆ test() [2/24]

template<typename T >
static char nil::crypto3::detail::is_iterator< T >::test (   ...)
static

◆ test() [3/24]

template<typename T >
static char nil::crypto3::detail::is_iterator< T >::test (   ...)
static

◆ test() [4/24]

template<typename T >
static char nil::crypto3::detail::is_iterator< T >::test (   ...)
static

◆ test() [5/24]

template<typename T >
static char nil::crypto3::detail::is_iterator< T >::test (   ...)
static

◆ test() [6/24]

template<typename T >
static char nil::crypto3::detail::is_iterator< T >::test (   ...)
static

◆ test() [7/24]

template<typename T >
static char nil::crypto3::detail::is_iterator< T >::test (   ...)
static

◆ test() [8/24]

template<typename T >
static char nil::crypto3::detail::is_iterator< T >::test (   ...)
static

◆ test() [9/24]

template<typename T >
static char nil::crypto3::detail::is_iterator< T >::test (   ...)
static

◆ test() [10/24]

template<typename T >
static char nil::crypto3::detail::is_iterator< T >::test (   ...)
static

◆ test() [11/24]

template<typename T >
static char nil::crypto3::detail::is_iterator< T >::test (   ...)
static

◆ test() [12/24]

template<typename T >
static char nil::crypto3::detail::is_iterator< T >::test (   ...)
static

◆ test() [13/24]

template<typename T >
template<typename U , typename = typename std::iterator_traits<U>::difference_type, typename = typename std::iterator_traits<U>::pointer, typename = typename std::iterator_traits<U>::reference, typename = typename std::iterator_traits<U>::value_type, typename = typename std::iterator_traits<U>::iterator_category>
static long nil::crypto3::detail::is_iterator< T >::test ( U &&  )
static

◆ test() [14/24]

template<typename T >
template<typename U , typename = typename std::iterator_traits<U>::difference_type, typename = typename std::iterator_traits<U>::pointer, typename = typename std::iterator_traits<U>::reference, typename = typename std::iterator_traits<U>::value_type, typename = typename std::iterator_traits<U>::iterator_category>
static long nil::crypto3::detail::is_iterator< T >::test ( U &&  )
static

◆ test() [15/24]

template<typename T >
template<typename U , typename = typename std::iterator_traits<U>::difference_type, typename = typename std::iterator_traits<U>::pointer, typename = typename std::iterator_traits<U>::reference, typename = typename std::iterator_traits<U>::value_type, typename = typename std::iterator_traits<U>::iterator_category>
static long nil::crypto3::detail::is_iterator< T >::test ( U &&  )
static

◆ test() [16/24]

template<typename T >
template<typename U , typename = typename std::iterator_traits<U>::difference_type, typename = typename std::iterator_traits<U>::pointer, typename = typename std::iterator_traits<U>::reference, typename = typename std::iterator_traits<U>::value_type, typename = typename std::iterator_traits<U>::iterator_category>
static long nil::crypto3::detail::is_iterator< T >::test ( U &&  )
static

◆ test() [17/24]

template<typename T >
template<typename U , typename = typename std::iterator_traits<U>::difference_type, typename = typename std::iterator_traits<U>::pointer, typename = typename std::iterator_traits<U>::reference, typename = typename std::iterator_traits<U>::value_type, typename = typename std::iterator_traits<U>::iterator_category>
static long nil::crypto3::detail::is_iterator< T >::test ( U &&  )
static

◆ test() [18/24]

template<typename T >
template<typename U , typename = typename std::iterator_traits<U>::difference_type, typename = typename std::iterator_traits<U>::pointer, typename = typename std::iterator_traits<U>::reference, typename = typename std::iterator_traits<U>::value_type, typename = typename std::iterator_traits<U>::iterator_category>
static long nil::crypto3::detail::is_iterator< T >::test ( U &&  )
static

◆ test() [19/24]

template<typename T >
template<typename U , typename = typename std::iterator_traits<U>::difference_type, typename = typename std::iterator_traits<U>::pointer, typename = typename std::iterator_traits<U>::reference, typename = typename std::iterator_traits<U>::value_type, typename = typename std::iterator_traits<U>::iterator_category>
static long nil::crypto3::detail::is_iterator< T >::test ( U &&  )
static

◆ test() [20/24]

template<typename T >
template<typename U , typename = typename std::iterator_traits<U>::difference_type, typename = typename std::iterator_traits<U>::pointer, typename = typename std::iterator_traits<U>::reference, typename = typename std::iterator_traits<U>::value_type, typename = typename std::iterator_traits<U>::iterator_category>
static long nil::crypto3::detail::is_iterator< T >::test ( U &&  )
static

◆ test() [21/24]

template<typename T >
template<typename U , typename = typename std::iterator_traits<U>::difference_type, typename = typename std::iterator_traits<U>::pointer, typename = typename std::iterator_traits<U>::reference, typename = typename std::iterator_traits<U>::value_type, typename = typename std::iterator_traits<U>::iterator_category>
static long nil::crypto3::detail::is_iterator< T >::test ( U &&  )
static

◆ test() [22/24]

template<typename T >
template<typename U , typename = typename std::iterator_traits<U>::difference_type, typename = typename std::iterator_traits<U>::pointer, typename = typename std::iterator_traits<U>::reference, typename = typename std::iterator_traits<U>::value_type, typename = typename std::iterator_traits<U>::iterator_category>
static long nil::crypto3::detail::is_iterator< T >::test ( U &&  )
static

◆ test() [23/24]

template<typename T >
template<typename U , typename = typename std::iterator_traits<U>::difference_type, typename = typename std::iterator_traits<U>::pointer, typename = typename std::iterator_traits<U>::reference, typename = typename std::iterator_traits<U>::value_type, typename = typename std::iterator_traits<U>::iterator_category>
static long nil::crypto3::detail::is_iterator< T >::test ( U &&  )
static

◆ test() [24/24]

template<typename T >
template<typename U , typename = typename std::iterator_traits<U>::difference_type, typename = typename std::iterator_traits<U>::pointer, typename = typename std::iterator_traits<U>::reference, typename = typename std::iterator_traits<U>::value_type, typename = typename std::iterator_traits<U>::iterator_category>
static long nil::crypto3::detail::is_iterator< T >::test ( U &&  )
static

Member Data Documentation

◆ value

template<typename T >
constexpr static bool nil::crypto3::detail::is_iterator< T >::value = std::is_same<decltype(test(std::declval<T>())), long>::value
staticconstexpr

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