ALib C++ Library
Library Version: 2402 R1
Documentation generated by doxygen
Loading...
Searching...
No Matches
Signatures Struct Reference

Description:


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 316 of file expressions.hpp.

#include <expressions.hpp>

Collaboration diagram for Signatures:
[legend]

Public Static Field Index:

static ALIB_API BoxB [1] = { &Types::Boolean }
 Function accepts one boolean argument.
 
static ALIB_API BoxBB [2] = { &Types::Boolean , &Types::Boolean }
 Function accepts two boolean arguments.
 
static ALIB_API BoxD [1] = { &Types::DateTime }
 Function accepts a DateTime argument.
 
static ALIB_API BoxDDur [2] = { &Types::DateTime , &Types::Duration }
 Function accepts a DateTime argument; followed by a Duration .
 
static ALIB_API BoxDur [1] = { &Types::Duration }
 Function accepts a Duration argument.
 
static ALIB_API BoxF [1] = { &Types::Float }
 Function accepts one floating point argument.
 
static ALIB_API BoxFF [2] = { &Types::Float , &Types::Float }
 Function accepts two floating point arguments.
 
static ALIB_API BoxI [1] = { &Types::Integer }
 Function accepts one integral argument.
 
static ALIB_API BoxII [2] = { &Types::Integer , &Types::Integer }
 Function accepts two integral arguments.
 
static ALIB_API BoxIVar [2] = { &Types::Integer , nullptr }
 Function accepts one integral argument, followed by variadic arguments.
 
static ALIB_API BoxS [1] = { &Types::String }
 Function accepts one string argument.
 
static ALIB_API BoxSI [2] = { &Types::String , &Types::Integer }
 Function accepts one string argument, followed by an integral argument.
 
static ALIB_API BoxSII [3] = { &Types::String , &Types::Integer , &Types::Integer }
 Function accepts one string argument, followed by two integral arguments.
 
static ALIB_API BoxSS [2] = { &Types::String , &Types::String }
 Function accepts two string arguments.
 
static ALIB_API BoxSSB [3] = { &Types::String , &Types::String , &Types::Boolean }
 Function accepts two string arguments, followed by a boolean argument.
 
static ALIB_API BoxSSI [3] = { &Types::String , &Types::String , &Types::Integer }
 Function accepts two string arguments, followed by an integral argument.
 
static ALIB_API BoxSSS [3] = { &Types::String , &Types::String , &Types::String }
 Function accepts three string arguments.
 
static ALIB_API BoxSVar [2] = { &Types::String , nullptr }
 Function accepts one string argument, followed by variadic arguments.
 
static ALIB_API BoxVar [1] = { nullptr }
 Function accepts variadic arguments.
 

Field Details:

◆ B

Box * B = { &Types::Boolean }
static

Function accepts one boolean argument.

Definition at line 319 of file expressions.hpp.

◆ BB

Box * BB = { &Types::Boolean , &Types::Boolean }
static

Function accepts two boolean arguments.

Definition at line 320 of file expressions.hpp.

◆ D

Box * D = { &Types::DateTime }
static

Function accepts a DateTime argument.

Definition at line 335 of file expressions.hpp.

◆ DDur

Box * DDur = { &Types::DateTime , &Types::Duration }
static

Function accepts a DateTime argument; followed by a Duration .

Definition at line 337 of file expressions.hpp.

◆ Dur

Box * Dur = { &Types::Duration }
static

Function accepts a Duration argument.

Definition at line 336 of file expressions.hpp.

◆ F

Box * F = { &Types::Float }
static

Function accepts one floating point argument.

Definition at line 324 of file expressions.hpp.

◆ FF

Box * FF = { &Types::Float , &Types::Float }
static

Function accepts two floating point arguments.

Definition at line 325 of file expressions.hpp.

◆ I

Box * I = { &Types::Integer }
static

Function accepts one integral argument.

Definition at line 321 of file expressions.hpp.

◆ II

Box * II = { &Types::Integer , &Types::Integer }
static

Function accepts two integral arguments.

Definition at line 322 of file expressions.hpp.

◆ IVar

Box * IVar = { &Types::Integer , nullptr }
static

Function accepts one integral argument, followed by variadic arguments.

Definition at line 323 of file expressions.hpp.

◆ S

Box * S = { &Types::String }
static

Function accepts one string argument.

Definition at line 326 of file expressions.hpp.

◆ SI

Box * SI = { &Types::String , &Types::Integer }
static

Function accepts one string argument, followed by an integral argument.

Definition at line 329 of file expressions.hpp.

◆ SII

Box * SII = { &Types::String , &Types::Integer , &Types::Integer }
static

Function accepts one string argument, followed by two integral arguments.

Definition at line 332 of file expressions.hpp.

◆ SS

Box * SS = { &Types::String , &Types::String }
static

Function accepts two string arguments.

Definition at line 328 of file expressions.hpp.

◆ SSB

Box * SSB = { &Types::String , &Types::String , &Types::Boolean }
static

Function accepts two string arguments, followed by a boolean argument.

Definition at line 330 of file expressions.hpp.

◆ SSI

Box * SSI = { &Types::String , &Types::String , &Types::Integer }
static

Function accepts two string arguments, followed by an integral argument.

Definition at line 331 of file expressions.hpp.

◆ SSS

Box * SSS = { &Types::String , &Types::String , &Types::String }
static

Function accepts three string arguments.

Definition at line 333 of file expressions.hpp.

◆ SVar

Box * SVar = { &Types::String , nullptr }
static

Function accepts one string argument, followed by variadic arguments.

Definition at line 327 of file expressions.hpp.

◆ Var

Box * Var = { nullptr }
static

Function accepts variadic arguments.

Definition at line 318 of file expressions.hpp.


The documentation for this struct was generated from the following files: