26#ifndef MU_PARSER_CALLBACK_H
27#define MU_PARSER_CALLBACK_H
Encapsulation of prototypes for a numerical parser function.
void * m_pFun
Pointer to the callback function, casted to void.
EOprtAssociativity GetAssociativity() const
Return the operators associativity.
ParserCallback * Clone() const
Clone this instance and return a pointer to the new instance.
ParserCallback()
Default constructor.
int m_iPri
Valid only for binary and infix operators; Operator precedence.
int GetArgc() const
Returns the number of function Arguments.
ETypeCode GetType() const
bool m_bAllowOpti
Flag indication optimizeability.
EOprtAssociativity m_eOprtAsct
Operator associativity; Valid only for binary operators.
int GetPri() const
Return the operator precedence.
int m_iArgc
Number of numeric function arguments.
bool IsOptimizable() const
Return tru if the function is conservative.
void * GetAddr() const
Get the callback address for the parser function.
ECmdCode GetCode() const
Return the callback code.
This file contains standard definitions used by the parser.
Namespace for mathematical applications.
value_type(* multfun_type)(const value_type *, int)
Callback type used for functions with a variable argument list.
value_type(* fun_type9)(const value_type &, const value_type &, const value_type &, const value_type &, const value_type &, const value_type &, const value_type &, const value_type &, const value_type &)
Callback type used for functions with five arguments.
value_type(* fun_type6)(const value_type &, const value_type &, const value_type &, const value_type &, const value_type &, const value_type &)
Callback type used for functions with five arguments.
value_type(* bulkfun_type6)(int, int, value_type, value_type, value_type, value_type, value_type, value_type)
Callback type used for functions with five arguments.
value_type(* strfun_type2)(const char_type *, value_type)
Callback type used for functions taking a string and a value as arguments.
value_type(* strfun_type3)(const char_type *, value_type, value_type)
Callback type used for functions taking a string and two values as arguments.
value_type(* bulkfun_type1)(int, int, value_type)
Callback type used for functions with a single arguments.
value_type(* bulkfun_type3)(int, int, value_type, value_type, value_type)
Callback type used for functions with three arguments.
value_type(* fun_type10)(const value_type &, const value_type &, const value_type &, const value_type &, const value_type &, const value_type &, const value_type &, const value_type &, const value_type &, const value_type &)
Callback type used for functions with five arguments.
value_type(* bulkfun_type9)(int, int, value_type, value_type, value_type, value_type, value_type, value_type, value_type, value_type, value_type)
Callback type used for functions with five arguments.
value_type(* strfun_type1)(const char_type *)
Callback type used for functions taking a string as an argument.
value_type(* bulkfun_type4)(int, int, value_type, value_type, value_type, value_type)
Callback type used for functions with four arguments.
value_type(* fun_type2)(const value_type &, const value_type &)
Callback type used for functions with two arguments.
value_type(* fun_type7)(const value_type &, const value_type &, const value_type &, const value_type &, const value_type &, const value_type &, const value_type &)
Callback type used for functions with five arguments.
value_type(* bulkfun_type5)(int, int, value_type, value_type, value_type, value_type, value_type)
Callback type used for functions with five arguments.
value_type(* fun_type5)(const value_type &, const value_type &, const value_type &, const value_type &, const value_type &)
Callback type used for functions with five arguments.
value_type(* bulkfun_type7)(int, int, value_type, value_type, value_type, value_type, value_type, value_type, value_type)
Callback type used for functions with five arguments.
value_type(* bulkfun_type2)(int, int, value_type, value_type)
Callback type used for functions with two arguments.
std::map< string_type, ParserCallback > funmap_type
Container for Callback objects.
value_type(* bulkfun_type8)(int, int, value_type, value_type, value_type, value_type, value_type, value_type, value_type, value_type)
Callback type used for functions with five arguments.
value_type(* fun_type1)(const value_type &)
Callback type used for functions with a single arguments.
@ cmFUNC
Code for a generic function item.
ETypeCode
Types internally used by the parser.
value_type(* fun_type8)(const value_type &, const value_type &, const value_type &, const value_type &, const value_type &, const value_type &, const value_type &, const value_type &)
Callback type used for functions with five arguments.
value_type(* bulkfun_type10)(int, int, value_type, value_type, value_type, value_type, value_type, value_type, value_type, value_type, value_type, value_type)
Callback type used for functions with five arguments.
value_type(* fun_type4)(const value_type &, const value_type &, const value_type &, const value_type &)
Callback type used for functions with four arguments.
value_type(* fun_type0)()
Callback type used for functions without arguments.
value_type(* fun_type3)(const value_type &, const value_type &, const value_type &)
Callback type used for functions with three arguments.
EOprtAssociativity
Parser operator precedence values.
value_type(* bulkfun_type0)(int, int)
Callback type used for functions without arguments.