33 #pragma warning(disable : 26812)
44 :m_pFun((void*)a_pFun)
50 , m_bAllowOpti(a_bAllowOpti)
55 :m_pFun((void*)a_pFun)
61 , m_bAllowOpti(a_bAllowOpti)
70 :m_pFun((void*)a_pFun)
76 , m_bAllowOpti(a_bAllowOpti)
91 :m_pFun((void*)a_pFun)
94 , m_eOprtAsct(a_eOprtAsct)
97 , m_bAllowOpti(a_bAllowOpti)
102 :m_pFun((void*)a_pFun)
105 , m_eOprtAsct(oaNONE)
108 , m_bAllowOpti(a_bAllowOpti)
113 :m_pFun((void*)a_pFun)
116 , m_eOprtAsct(oaNONE)
119 , m_bAllowOpti(a_bAllowOpti)
124 :m_pFun((void*)a_pFun)
127 , m_eOprtAsct(oaNONE)
130 , m_bAllowOpti(a_bAllowOpti)
135 :m_pFun((void*)a_pFun)
138 , m_eOprtAsct(oaNONE)
141 , m_bAllowOpti(a_bAllowOpti)
146 :m_pFun((void*)a_pFun)
149 , m_eOprtAsct(oaNONE)
152 , m_bAllowOpti(a_bAllowOpti)
157 :m_pFun((void*)a_pFun)
160 , m_eOprtAsct(oaNONE)
163 , m_bAllowOpti(a_bAllowOpti)
168 :m_pFun((void*)a_pFun)
171 , m_eOprtAsct(oaNONE)
174 , m_bAllowOpti(a_bAllowOpti)
179 :m_pFun((void*)a_pFun)
182 , m_eOprtAsct(oaNONE)
185 , m_bAllowOpti(a_bAllowOpti)
190 :m_pFun((void*)a_pFun)
193 , m_eOprtAsct(oaNONE)
196 , m_bAllowOpti(a_bAllowOpti)
201 :m_pFun((void*)a_pFun)
204 , m_eOprtAsct(oaNONE)
207 , m_bAllowOpti(a_bAllowOpti)
215 :m_pFun((void*)a_pFun)
218 , m_eOprtAsct(oaNONE)
221 , m_bAllowOpti(a_bAllowOpti)
226 :m_pFun((void*)a_pFun)
229 , m_eOprtAsct(oaNONE)
232 , m_bAllowOpti(a_bAllowOpti)
237 :m_pFun((void*)a_pFun)
240 , m_eOprtAsct(oaNONE)
243 , m_bAllowOpti(a_bAllowOpti)
248 :m_pFun((void*)a_pFun)
251 , m_eOprtAsct(oaNONE)
254 , m_bAllowOpti(a_bAllowOpti)
259 :m_pFun((void*)a_pFun)
262 , m_eOprtAsct(oaNONE)
265 , m_bAllowOpti(a_bAllowOpti)
270 :m_pFun((void*)a_pFun)
273 , m_eOprtAsct(oaNONE)
276 , m_bAllowOpti(a_bAllowOpti)
281 :m_pFun((void*)a_pFun)
284 , m_eOprtAsct(oaNONE)
287 , m_bAllowOpti(a_bAllowOpti)
292 :m_pFun((void*)a_pFun)
295 , m_eOprtAsct(oaNONE)
298 , m_bAllowOpti(a_bAllowOpti)
303 :m_pFun((void*)a_pFun)
306 , m_eOprtAsct(oaNONE)
309 , m_bAllowOpti(a_bAllowOpti)
314 :m_pFun((void*)a_pFun)
317 , m_eOprtAsct(oaNONE)
320 , m_bAllowOpti(a_bAllowOpti)
325 :m_pFun((void*)a_pFun)
328 , m_eOprtAsct(oaNONE)
331 , m_bAllowOpti(a_bAllowOpti)
336 :m_pFun((void*)a_pFun)
339 , m_eOprtAsct(oaNONE)
342 , m_bAllowOpti(a_bAllowOpti)
347 :m_pFun((void*)a_pFun)
350 , m_eOprtAsct(oaNONE)
353 , m_bAllowOpti(a_bAllowOpti)
358 :m_pFun((void*)a_pFun)
361 , m_eOprtAsct(oaNONE)
364 , m_bAllowOpti(a_bAllowOpti)
369 :m_pFun((void*)a_pFun)
372 , m_eOprtAsct(oaNONE)
375 , m_bAllowOpti(a_bAllowOpti)
386 , m_eOprtAsct(oaNONE)
399 m_iArgc = ref.m_iArgc;
400 m_bAllowOpti = ref.m_bAllowOpti;
401 m_iCode = ref.m_iCode;
402 m_iType = ref.m_iType;
404 m_eOprtAsct = ref.m_eOprtAsct;
412 m_iArgc = ref.m_iArgc;
413 m_bAllowOpti = ref.m_bAllowOpti;
414 m_iCode = ref.m_iCode;
415 m_iType = ref.m_iType;
417 m_eOprtAsct = ref.m_eOprtAsct;
461 ETypeCode ParserCallback::GetType()
const
496 #if defined(_MSC_VER)
ParserCallback()
Default constructor.
value_type(* strfun_type1)(const char_type *)
Callback type used for functions taking a string as an argument.
user defined binary operator
value_type(* bulkfun_type1)(int, int, value_type)
Callback type used for functions with a single arguments.
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 eight arguments.
value_type(* fun_type5)(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.
value_type(* fun_type1)(value_type)
Callback type used for functions with a single arguments.
value_type(* strfun_type4)(const char_type *, value_type, value_type, value_type)
Callback type used for functions taking a string and a value as 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 nine 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.
ECmdCode GetCode() const
Return the callback code.
bool IsOptimizable() const
Return tru if the function is conservative.
value_type(* multfun_type)(const value_type *, int)
Callback type used for functions with a variable argument list.
Code for a generic function item.
EOprtAssociativity
Parser operator precedence values.
value_type(* fun_type8)(value_type, value_type, value_type, value_type, value_type, value_type, value_type, value_type)
Callback type used for functions with eight 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(* bulkfun_type6)(int, int, value_type, value_type, value_type, value_type, value_type, value_type)
Callback type used for functions with six arguments.
value_type(* strfun_type5)(const char_type *, value_type, value_type, value_type, value_type)
Callback type used for functions taking a string and two values as arguments.
ParserCallback * Clone() const
Clone this instance and return a pointer to the new instance.
EOprtAssociativity GetAssociativity() const
Return the operators associativity.
value_type(* fun_type10)(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 ten arguments.
value_type(* fun_type9)(value_type, value_type, value_type, value_type, value_type, value_type, value_type, value_type, value_type)
Callback type used for functions with nine arguments.
ETypeCode
Types internally used by the parser.
value_type(* fun_type2)(value_type, value_type)
Callback type used for functions with two arguments.
String type (Function arguments and constants only, no string variables)
value_type(* strfun_type2)(const char_type *, value_type)
Callback type used for functions taking a string and a value as arguments.
Namespace for mathematical applications.
value_type(* fun_type3)(value_type, value_type, value_type)
Callback type used for functions with three arguments.
value_type(* fun_type0)()
Callback type used for functions without arguments.
Special callbacks for Bulk mode with an additional parameter for the bulk index.
Definition of the parser callback class.
Code for a function with a string parameter.
void * GetAddr() const
Get the callback address for the parser function.
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 seven arguments.
value_type(* fun_type4)(value_type, value_type, value_type, value_type)
Callback type used for functions with four arguments.
value_type(* fun_type7)(value_type, value_type, value_type, value_type, value_type, value_type, value_type)
Callback type used for functions with seven arguments.
int GetArgc() const
Returns the number of function Arguments.
value_type(* bulkfun_type4)(int, int, value_type, value_type, value_type, value_type)
Callback type used for functions with four arguments.
value_type(* bulkfun_type0)(int, int)
Callback type used for functions without arguments.
Floating point variables.
value_type(* bulkfun_type3)(int, int, value_type, value_type, value_type)
Callback type used for functions with three arguments.
Encapsulation of prototypes for a numerical parser function.
int GetPri() const
Return the operator precedence.
value_type(* fun_type6)(value_type, value_type, value_type, value_type, value_type, value_type)
Callback type used for functions with six 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 ten arguments.