The Gaudi Framework  v36r2 (27905625)
Gaudi::Functional::details::deref_t Struct Reference

#include </builds/gaudi/Gaudi/GaudiAlg/include/GaudiAlg/FunctionalDetails.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 207 of file FunctionalDetails.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 209 of file FunctionalDetails.h.

209  {
210  return in;
211  }

◆ operator()() [2/3]

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

Definition at line 219 of file FunctionalDetails.h.

219  {
220  assert( in != nullptr );
221  return *in;
222  }

◆ 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 214 of file FunctionalDetails.h.

214  {
215  return std::forward<In>( in );
216  }

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