#include <expressions.hpp>
This struct holds static arrays of pointers to sample values. The arrays are used with helper class Calculus to denote accepted "function signatures" when* initializing column FunctionEntry::Signature of table Calculus::Functions.
Each static field of this class represents a permutation of function arguments. Note, that only those permutations which are needed and used by the built-in compiler plugins ( Arithmetics, Math, Strings and DateAndTime ) are contained here.
Custom compiler plug-ins may use the argument signatures given here, if a fitting signature is already included. Otherwise a custom signature array has to be defined, initialized and provided to the function definition table.
Definition at line 317 of file expressions.hpp.
Public Static Fields | |
static ALIB_API Box * | B [1] = { &Types::Boolean } |
Function accepts one boolean argument. | |
static ALIB_API Box * | BB [2] = { &Types::Boolean , &Types::Boolean } |
Function accepts two boolean arguments. | |
static ALIB_API Box * | D [1] = { &Types::DateTime } |
Function accepts a DateTime argument. | |
static ALIB_API Box * | DDur [2] = { &Types::DateTime , &Types::Duration } |
Function accepts a DateTime argument, followed by a Duration. | |
static ALIB_API Box * | Dur [1] = { &Types::Duration } |
Function accepts a Duration argument. | |
static ALIB_API Box * | F [1] = { &Types::Float } |
Function accepts one floating point argument. | |
static ALIB_API Box * | FF [2] = { &Types::Float , &Types::Float } |
Function accepts two floating point arguments. | |
static ALIB_API Box * | I [1] = { &Types::Integer } |
Function accepts one integral argument. | |
static ALIB_API Box * | II [2] = { &Types::Integer , &Types::Integer } |
Function accepts two integral arguments. | |
static ALIB_API Box * | IVar [2] = { &Types::Integer , nullptr } |
Function accepts one integral argument, followed by variadic arguments. | |
static ALIB_API Box * | S [1] = { &Types::String } |
Function accepts one string argument. | |
static ALIB_API Box * | SI [2] = { &Types::String , &Types::Integer } |
Function accepts one string argument, followed by an integral argument. | |
static ALIB_API Box * | SII [3] = { &Types::String , &Types::Integer , &Types::Integer } |
Function accepts one string argument, followed by two integral arguments. | |
static ALIB_API Box * | SS [2] = { &Types::String , &Types::String } |
Function accepts two string arguments. | |
static ALIB_API Box * | SSB [3] = { &Types::String , &Types::String , &Types::Boolean } |
Function accepts two string arguments, followed by a boolean argument. | |
static ALIB_API Box * | SSI [3] = { &Types::String , &Types::String , &Types::Integer } |
Function accepts two string arguments, followed by an integral argument. | |
static ALIB_API Box * | SSS [3] = { &Types::String , &Types::String , &Types::String } |
Function accepts three string arguments. | |
static ALIB_API Box * | SVar [2] = { &Types::String , nullptr } |
Function accepts one string argument, followed by variadic arguments. | |
static ALIB_API Box * | Var [1] = { nullptr } |
Function accepts variadic arguments. | |