CYCLUS
Classes | Public Types | Static Public Member Functions | Static Public Attributes | List of all members
pretty_print::has_begin_end< T > Struct Template Reference

Detailed Description

template<typename T>
struct pretty_print::has_begin_end< T >

Definition at line 50 of file prettyprint.hpp.

#include <prettyprint.hpp>

Classes

struct  ChT
 
struct  Derived
 
struct  Dummy
 
struct  Fallback
 

Public Types

typedef TType::const_iterator iter
 
typedef conditional< has_const_iterator< T >::value, T, Dummy >::type TType
 

Static Public Member Functions

template<typename C >
static char(& f (ChT< iter(Fallback::*)() const, &C::begin > *))[1]
 
template<typename C >
static char(& f (...))[2]
 
template<typename C >
static char(& g (ChT< iter(Fallback::*)() const, &C::end > *))[1]
 
template<typename C >
static char(& g (...))[2]
 

Static Public Attributes

static bool const beg_value = sizeof(f<Derived>(0)) == 2
 
static bool const end_value = sizeof(g<Derived>(0)) == 2
 

Member Typedef Documentation

◆ iter

template<typename T >
typedef TType::const_iterator pretty_print::has_begin_end< T >::iter

Definition at line 54 of file prettyprint.hpp.

◆ TType

template<typename T >
typedef conditional<has_const_iterator<T>::value, T, Dummy>::type pretty_print::has_begin_end< T >::TType

Definition at line 53 of file prettyprint.hpp.

Member Function Documentation

◆ f() [1/2]

template<typename T >
template<typename C >
static char(& pretty_print::has_begin_end< T >::f ( ChT< iter(Fallback::*)() const, &C::begin > *  ) )[1]
static

◆ f() [2/2]

template<typename T >
template<typename C >
static char(& pretty_print::has_begin_end< T >::f (   ...) )[2]
static

◆ g() [1/2]

template<typename T >
template<typename C >
static char(& pretty_print::has_begin_end< T >::g ( ChT< iter(Fallback::*)() const, &C::end > *  ) )[1]
static

◆ g() [2/2]

template<typename T >
template<typename C >
static char(& pretty_print::has_begin_end< T >::g (   ...) )[2]
static

Member Data Documentation

◆ beg_value

template<typename T >
bool const pretty_print::has_begin_end< T >::beg_value = sizeof(f<Derived>(0)) == 2
static

Definition at line 66 of file prettyprint.hpp.

◆ end_value

template<typename T >
bool const pretty_print::has_begin_end< T >::end_value = sizeof(g<Derived>(0)) == 2
static

Definition at line 67 of file prettyprint.hpp.


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