The Gaudi Framework  v41r0 (bdbe7744)
Loading...
Searching...
No Matches
Gaudi::Functional::details::invoke_optionally_t Struct Reference

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

Public Member Functions

template<typename F, typename Arg>
requires ( !is_optional<Arg> )
decltype(auto) operator() (F &&f, Arg &&arg) const
template<typename F, is_optional Arg>
void operator() (F &&f, Arg &&arg) const

Detailed Description

Definition at line 69 of file details.h.

Member Function Documentation

◆ operator()() [1/2]

template<typename F, is_optional Arg>
void Gaudi::Functional::details::invoke_optionally_t::operator() ( F && f,
Arg && arg ) const
inline

Definition at line 76 of file details.h.

76 {
77 if ( arg ) std::invoke( std::forward<F>( f ), *std::forward<Arg>( arg ) );
78 }

◆ operator()() [2/2]

template<typename F, typename Arg>
requires ( !is_optional<Arg> )
decltype(auto) Gaudi::Functional::details::invoke_optionally_t::operator() ( F && f,
Arg && arg ) const
inline

Definition at line 72 of file details.h.

72 {
73 return std::invoke( std::forward<F>( f ), std::forward<Arg>( arg ) );
74 }

The documentation for this struct was generated from the following file:
  • GaudiFunctional/include/Gaudi/Functional/details.h