21 template <
typename Signature,
typename Traits_ = Traits::useDefaults>
25 template <
typename Out,
typename... In,
typename Traits_>
36 invoke( std::index_sequence_for<In...>{} );
45 virtual Out
operator()(
const In&... )
const = 0;
49 void invoke( std::index_sequence<I...> )
59 template <
typename Signature,
typename Traits_ = Traits::useDefaults>
62 template <
typename... Out,
typename... In,
typename Traits_>
73 invoke( std::index_sequence_for<In...>{}, std::index_sequence_for<Out...>{} );
86 void invoke( std::index_sequence<I...>, std::index_sequence<O...> )
89 #if __cplusplus < 201703L 101 template <
typename Signature,
typename Traits_ = Traits::useDefaults>
104 template <
typename... Out,
typename... In,
typename Traits_>
115 invoke( std::index_sequence_for<In...>{}, std::index_sequence_for<Out...>{} );
128 void invoke( std::index_sequence<I...>, std::index_sequence<O...> )
131 this->setFilterPassed( std::get<0>( out ) );
virtual const std::string & message() const
error message to be printed
Define general base for Gaudi exception.
class MergingTransformer< Out(const vector_of_const_< In > void
constexpr struct Gaudi::Functional::details::deref_t deref
virtual const StatusCode & code() const
StatusCode for Exception.
This class is used for returning status codes from appropriate routines.
constexpr static const auto SUCCESS
constexpr std::add_const_t< T > & as_const(T &t) noexcept
std::vector< InputHandle_t< In > > m_inputs
virtual Out operator()(const vector_of_const_< In > &inputs) const =0
struct[[deprecated("use MergingTransformer instead")]] Traits_
auto invoke(F &&f, ArgTypes &&...args) noexcept(noexcept(detail2::INVOKE(std::forward< F >(f), std::forward< ArgTypes >(args)...))) -> decltype(detail2::INVOKE(std::forward< F >(f), std::forward< ArgTypes >(args)...))
Helper functions to set/get the application return code.
MsgStream & endmsg(MsgStream &s)
MsgStream Modifier: endmsg. Calls the output method of the MsgStream.
Out1 * put(DataObjectHandle< Out1 > &out_handle, Out2 &&out)