A platform for high-performance distributed tool and library development written in C++. It can be deployed in two different cluster modes: standalone or distributed. API for v0.5.0, released on June 13, 2018.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
CPPLambdaCreationFunctions.h File Reference
+ Include dependency graph for CPPLambdaCreationFunctions.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

 pdb
 

Functions

template<typename ParamOne , typename F >
auto pdb::makeLambda (Handle< ParamOne > &pOne, F arg) -> LambdaTree< std::enable_if_t< std::is_reference< decltype(arg(pOne))>::value, Ptr< typename std::remove_reference< decltype(arg(pOne))>::type >>>
 
template<typename ParamOne , typename ParamTwo , typename F >
auto pdb::makeLambda (Handle< ParamOne > &pOne, Handle< ParamTwo > &pTwo, F arg) -> LambdaTree< std::enable_if_t< std::is_reference< decltype(arg(pOne, pTwo))>::value, Ptr< typename std::remove_reference< decltype(arg(pOne, pTwo))>::type >>>
 
template<typename ParamOne , typename ParamTwo , typename ParamThree , typename F >
auto pdb::makeLambda (Handle< ParamOne > &pOne, Handle< ParamTwo > &pTwo, Handle< ParamThree > pThree, F arg) -> LambdaTree< std::enable_if_t< std::is_reference< decltype(arg(pOne, pTwo, pThree))>::value, Ptr< typename std::remove_reference< decltype(arg(pOne, pTwo, pThree))>::type >>>
 
template<typename ParamOne , typename ParamTwo , typename ParamThree , typename F >
auto pdb::makeLambda (Handle< ParamOne > &pOne, Handle< ParamTwo > &pTwo, Handle< ParamThree > &pThree, F arg) -> LambdaTree< std::enable_if_t<!std::is_reference< decltype(arg(pOne, pTwo, pThree))>::value, decltype(arg(pOne, pTwo, pThree))>>
 
template<typename ParamOne , typename ParamTwo , typename ParamThree , typename ParamFour , typename F >
auto pdb::makeLambda (Handle< ParamOne > &pOne, Handle< ParamTwo > &pTwo, Handle< ParamThree > &pThree, Handle< ParamFour > &pFour, F arg) -> LambdaTree< std::enable_if_t< std::is_reference< decltype(arg(pOne, pTwo, pThree, pFour))>::value, Ptr< typename std::remove_reference< decltype(arg(pOne, pTwo, pThree, pFour))>::type >>>
 
template<typename ParamOne , typename ParamTwo , typename ParamThree , typename ParamFour , typename ParamFive , typename F >
auto pdb::makeLambda (Handle< ParamOne > &pOne, Handle< ParamTwo > &pTwo, Handle< ParamThree > &pThree, Handle< ParamFour > &pFour, Handle< ParamFive > &pFive, F arg) -> LambdaTree< std::enable_if_t< std::is_reference< decltype(arg(pOne, pTwo, pThree, pFour, pFive))>::value, Ptr< typename std::remove_reference< decltype(arg(pOne, pTwo, pThree, pFour, pFive))>::type >>>