Logo ROOT  
Reference Guide
Loading...
Searching...
No Matches
ROOT::TypeTraits::HasBeginAndEnd< T > Struct Template Reference

template<typename T>
struct ROOT::TypeTraits::HasBeginAndEnd< T >

Definition at line 172 of file TypeTraits.hxx.

Public Types

template<typename V>
using Begin_t = typename V::const_iterator (V::*)() const
template<typename V>
using End_t = typename V::const_iterator (V::*)() const

Static Public Member Functions

template<typename V>
static constexpr bool Check (...)
template<typename V>
static constexpr auto Check (int) -> decltype(static_cast< Begin_t< V > >(&V::begin), static_cast< End_t< V > >(&V::end), true)

Static Public Attributes

static constexpr bool const value = Check<T>(0)

#include <ROOT/TypeTraits.hxx>

Member Typedef Documentation

◆ Begin_t

template<typename T>
template<typename V>
using ROOT::TypeTraits::HasBeginAndEnd< T >::Begin_t = typename V::const_iterator (V::*)() const

Definition at line 175 of file TypeTraits.hxx.

◆ End_t

template<typename T>
template<typename V>
using ROOT::TypeTraits::HasBeginAndEnd< T >::End_t = typename V::const_iterator (V::*)() const

Definition at line 178 of file TypeTraits.hxx.

Member Function Documentation

◆ Check() [1/2]

template<typename T>
template<typename V>
constexpr bool ROOT::TypeTraits::HasBeginAndEnd< T >::Check ( ...)
inlinestaticconstexpr

Definition at line 188 of file TypeTraits.hxx.

◆ Check() [2/2]

template<typename T>
template<typename V>
constexpr auto ROOT::TypeTraits::HasBeginAndEnd< T >::Check ( int ) -> decltype(static_cast< Begin_t< V > >(&V::begin), static_cast< End_t< V > >(&V::end), true)
inlinestaticconstexpr

Definition at line 181 of file TypeTraits.hxx.

Member Data Documentation

◆ value

template<typename T>
bool const ROOT::TypeTraits::HasBeginAndEnd< T >::value = Check<T>(0)
staticconstexpr

Definition at line 193 of file TypeTraits.hxx.


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