OGS
Apply.h File Reference

Detailed Description

Definition in file Apply.h.

#include "Get.h"
Include dependency graph for Apply.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  ProcessLib::Graph::detail::GetFunctionArgumentTypesPlain< Function >
 
struct  ProcessLib::Graph::detail::GetFunctionArgumentTypesPlain< Result(Class::*)(Args...)>
 
struct  ProcessLib::Graph::detail::GetFunctionArgumentTypesPlain< Result(Class::*)(Args...) const >
 
struct  ProcessLib::Graph::detail::GetFunctionArgumentTypesPlain< Result(*)(Args...)>
 
struct  ProcessLib::Graph::detail::GetFunctionReturnType< Function >
 
struct  ProcessLib::Graph::detail::GetFunctionReturnType< Result(Class::*)(Args...)>
 
struct  ProcessLib::Graph::detail::GetFunctionReturnType< Result(Class::*)(Args...) const >
 
struct  ProcessLib::Graph::detail::GetFunctionReturnType< Result(*)(Args...)>
 
struct  ProcessLib::Graph::detail::GetFlattenedTupleOfPassedArgs< Function, PassedArgsTuples >
 
struct  ProcessLib::Graph::detail::GetFlattenedTupleOfPassedArgs< Result(Class::*)(DeclaredArgs...), ClassAgain, PassedArgsTuples... >
 
struct  ProcessLib::Graph::detail::GetFlattenedTupleOfPassedArgs< Result(Class::*)(DeclaredArgs...) const, ClassAndPassedArgsTuples... >
 
struct  ProcessLib::Graph::detail::GetFlattenedTupleOfPassedArgs< Result(*)(DeclaredArgs...), Tuples... >
 

Namespaces

namespace  ProcessLib
 
namespace  ProcessLib::Graph
 
namespace  ProcessLib::Graph::detail
 

Functions

template<typename Object , typename... Tuples, typename... MemberFunctionArgumentTypesPlain>
auto ProcessLib::Graph::detail::unpackAndInvoke (boost::mp11::mp_list< MemberFunctionArgumentTypesPlain... >, Object &&o, Tuples &... ts) -> typename GetFunctionReturnType< decltype(&std::decay_t< Object >::operator())>::type
 
template<typename Result , typename Object , typename... Args, typename... Tuples, typename... MemberFunctionArgumentTypesPlain>
Result ProcessLib::Graph::detail::unpackAndInvoke (boost::mp11::mp_list< MemberFunctionArgumentTypesPlain... >, Result(Object::*m)(Args...), Object &o, Tuples &... ts)
 
template<typename Result , typename Object , typename... Args, typename... Tuples, typename... MemberFunctionArgumentTypesPlain>
Result ProcessLib::Graph::detail::unpackAndInvoke (boost::mp11::mp_list< MemberFunctionArgumentTypesPlain... >, Result(Object::*m)(Args...), Object &&o, Tuples &... ts)
 
template<typename Result , typename Object , typename... Args, typename... Tuples, typename... MemberFunctionArgumentTypesPlain>
Result ProcessLib::Graph::detail::unpackAndInvoke (boost::mp11::mp_list< MemberFunctionArgumentTypesPlain... >, Result(Object::*m)(Args...) const, Object const &o, Tuples &... ts)
 
template<typename Result , typename... Args, typename... Tuples, typename... FunctionArgumentTypesPlain>
Result ProcessLib::Graph::detail::unpackAndInvoke (boost::mp11::mp_list< FunctionArgumentTypesPlain... >, Result(*fct)(Args...), Tuples &... ts)
 
template<typename Function , typename... Args>
auto ProcessLib::Graph::detail::applyImpl (Function &&f, Args &&... args) -> typename detail::GetFunctionReturnType< std::decay_t< Function > >::type
 
template<typename Function , typename... Tuples>
auto ProcessLib::Graph::apply (Function &f, Tuples &... ts) -> typename detail::GetFunctionReturnType< std::decay_t< Function > >::type
 
template<typename Function , typename... Tuples>
auto ProcessLib::Graph::eval (Function &f, Tuples &... ts) -> typename detail::GetFunctionReturnType< decltype(&Function::eval)>::type