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