Go to the documentation of this file.
   23     std::vector<NullableDatumRef> 
args;
 
   53 #define FMGR_FUNCTION_ARGS    ::taco::FunctionCallInfo &fcinfo_ 
   58 #define FMGR_NARGS() (fcinfo_.args.size()) 
   63 #define FMGR_ARG(n) (fcinfo_.args[n]) 
   69 #define FMGR_TYPPARAM() (fcinfo_.typparam) 
   75 #define FMGR_RETURN_VOID()     return Datum::From(0) 
   80 template<
class ...Args>
 
   84         .
args = std::vector<NullableDatumRef>{std::forward<Args>(args)...},
 
   94 template<
class ...Args>
 
  100         .
args = std::vector<NullableDatumRef>{std::forward<Args>(args)...},
 
  101         .typparam = typparam,
 
  
std::function< Datum(FunctionCallInfo &)> FunctionInfo
An FMGR managed function should be declared as.
Definition: fmgr.h:50
 
Datum FunctionCallWithTypparam(const FunctionInfo &func, uint64_t typparam, Args &&...args)
Definition: fmgr.h:96
 
This struct is the data actually passed to an fmgr function.
Definition: fmgr.h:21
 
Datum(* FunctionPtr)(FunctionCallInfo &fcinfo)
Definition: fmgr.h:28
 
uint64_t typparam
Definition: fmgr.h:24
 
A Datum stores and possibly manage the memory resource of a read-only value of a plain fixed-length C...
Definition: datum.h:250
 
std::vector< NullableDatumRef > args
Definition: fmgr.h:23
 
Datum FunctionCall(const FunctionInfo &func, Args &&...args)
Call a function without passing any type parameter for the return type.
Definition: fmgr.h:82