SignalLogger
A library for signal logging.
signal_logger::traits::has_begin_end< T > Struct Template Reference

#include <signal_logger_traits.hpp>

Classes

struct  ChT
 
struct  Derived
 
struct  Dummy
 
struct  Fallback
 

Public Types

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

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 signal_logger::traits::has_begin_end< T >::iter

◆ TType

template<typename T >
typedef std::conditional<has_const_iterator<T>::value, T, Dummy>::type signal_logger::traits::has_begin_end< T >::TType

Member Function Documentation

◆ f() [1/2]

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

◆ f() [2/2]

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

◆ g() [1/2]

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

◆ g() [2/2]

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

Member Data Documentation

◆ beg_value

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

◆ end_value

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

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