The Gaudi Framework  v38r1p1 (ae26267b)
Gaudi::Functional::details::deref_t Struct Reference

#include </builds/gaudi/Gaudi/GaudiFunctional/include/Gaudi/Functional/details.h>

Public Member Functions

template<typename In , typename = std::enable_if_t<!std::is_pointer_v<In>>>
const In & operator() (const In &in) const
 
template<typename In , typename = std::enable_if_t<!std::is_pointer_v<std::decay_t<In>>>>
In operator() (In &&in) const
 
template<typename In >
const In & operator() (const In *in) const
 

Detailed Description

Definition at line 216 of file details.h.

Member Function Documentation

◆ operator()() [1/3]

template<typename In , typename = std::enable_if_t<!std::is_pointer_v<In>>>
const In& Gaudi::Functional::details::deref_t::operator() ( const In &  in) const
inline

Definition at line 218 of file details.h.

218  {
219  return in;
220  }

◆ operator()() [2/3]

template<typename In >
const In& Gaudi::Functional::details::deref_t::operator() ( const In *  in) const
inline

Definition at line 228 of file details.h.

228  {
229  assert( in != nullptr );
230  return *in;
231  }

◆ operator()() [3/3]

template<typename In , typename = std::enable_if_t<!std::is_pointer_v<std::decay_t<In>>>>
In Gaudi::Functional::details::deref_t::operator() ( In &&  in) const
inline

Definition at line 223 of file details.h.

223  {
224  return std::forward<In>( in );
225  }

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