Lumiera
0.pre.03
»edit your freedom«
|
#include "lib/meta/function-closure.hpp"
Bind a specific argument to an arbitrary value.
Especially, this "value" might be another binder.
Definition at line 667 of file function-closure.hpp.
Public Types | |
typedef function< ReducedSig > | ReducedFunc |
Static Public Member Functions | |
static ReducedFunc | reduced (SIG &f, Tuple< Types< X >> const &val) |
Private Types | |
enum | { ARG_CNT = count<ArgsList>::value } |
typedef _Fun< SIG >::Args | Args |
typedef Args::List | ArgsList |
using | BuildPreparedArgs = TupleConstructor< PreparedArgTypes, IdxSelector > |
template<class SRC , class TAR , size_t i> | |
using | IdxSelector = typename PartiallyInitTuple< SRC, TAR, pos >::template IndexMapper< i > |
typedef func::PlaceholderTuple< RemainingFront >::List | PlaceholdersBefore |
typedef func::PlaceholderTuple< RemainingBack, pos+1 >::List | PlaceholdersBehind |
typedef Append< typename Append< PlaceholdersBefore, ValList >::List, PlaceholdersBehind >::List | PreparedArgs |
using | PreparedArgTypes = typename Types< PreparedArgs >::Seq |
typedef Append< RemainingFront, RemainingBack >::List | ReducedArgs |
using | ReducedSig = typename BuildFunType< Ret, RemainingArgs >::Sig |
using | RemainingArgs = typename Types< ReducedArgs >::Seq |
typedef Splice< ArgsList, ValList, pos >::Back | RemainingBack |
typedef Splice< ArgsList, ValList, pos >::Front | RemainingFront |
typedef _Fun< SIG >::Ret | Ret |
typedef Types< X >::List | ValList |