The Gaudi Framework  v32r0 (3325bb39)
Gaudi::Functional::details::details2 Namespace Reference

Classes

struct  get_from_handle
 

Typedefs

template<typename T >
using is_optional_ = decltype(bool{std::declval< T >()}, std::declval< T >().value())
 

Functions

template<typename Container , typename Value >
void push_back (Container &c, const Value &v, std::true_type)
 
template<typename Container , typename Value >
void push_back (Container &c, const Value &v, std::false_type)
 
template<typename T >
T * deref_if (T *const t, std::false_type)
 
template<typename T >
T & deref_if (T *const t, std::true_type)
 

Typedef Documentation

template<typename T >
using Gaudi::Functional::details::details2::is_optional_ = typedef decltype( bool{std::declval<T>()}, std::declval<T>().value() )

Definition at line 93 of file FunctionalDetails.h.

Function Documentation

template<typename T >
T* Gaudi::Functional::details::details2::deref_if ( T *const  t,
std::false_type   
)

Definition at line 206 of file FunctionalDetails.h.

206  {
207  return t;
208  }
template<typename T >
T& Gaudi::Functional::details::details2::deref_if ( T *const  t,
std::true_type   
)

Definition at line 210 of file FunctionalDetails.h.

210  {
211  return *t;
212  }
template<typename Container , typename Value >
void Gaudi::Functional::details::details2::push_back ( Container &  c,
const Value &  v,
std::true_type   
)

Definition at line 184 of file FunctionalDetails.h.

184  {
185  c.push_back( v );
186  }
template<typename Container , typename Value >
void Gaudi::Functional::details::details2::push_back ( Container &  c,
const Value &  v,
std::false_type   
)

Definition at line 188 of file FunctionalDetails.h.

188  {
189  c.push_back( &v );
190  }