25 #ifndef MU_PARSER_BYTECODE_H
26 #define MU_PARSER_BYTECODE_H
73 typedef std::vector<map_type> storage_type;
82 const int mc_iSizeVal;
88 const int mc_iSizePtr;
101 const int mc_iSizeValEntry;
103 void StorePtr(
void *a_pAddr);
std::size_t GetBufSize() const
Definition: muParserBytecode.cpp:281
~ParserByteCode()
Destructor (trivial).
Definition: muParserBytecode.cpp:59
void AddAssignOp(value_type *a_pVar)
Add an assignement operator.
Definition: muParserBytecode.cpp:207
const muChar_t muFloat_t a_fVal
Definition: muParserDLL.h:107
void AddStrFun(void *a_pFun, int a_iArgc, int a_iIdx)
Add Strung function entry to the parser bytecode.
Definition: muParserBytecode.cpp:246
void Assign(const ParserByteCode &a_ByteCode)
Copy state of another object to this.
Definition: muParserBytecode.cpp:127
const muChar_t muFun0_t a_pFun
Definition: muParserDLL.h:84
bytecode_type map_type
Underlying type of the container.
Definition: muParserBytecode.h:65
void AddOp(ECmdCode a_Oprt)
Add an operator identifier to bytecode.
Definition: muParserBytecode.cpp:190
unsigned const muChar_t muFloat_t ** a_pVar
Definition: muParserDLL.h:145
MUP_BYTECODE_TYPE bytecode_type
The bytecode type used by the parser.
Definition: muParserDef.h:234
void AsciiDump()
Dump bytecode (for debugging only!).
Definition: muParserBytecode.cpp:318
ParserByteCode()
Definition: muParserBytecode.cpp:47
void AddVal(value_type a_fVal)
Add a Variable pointer to bytecode.
Definition: muParserBytecode.cpp:170
unsigned GetValSize() const
Return size of a value entry.
Definition: muParserBytecode.h:132
ECmdCode
Bytecode values.
Definition: muParserDef.h:154
MUP_BASETYPE value_type
The numeric datatype used by the parser.
Definition: muParserDef.h:222
void RemoveValEntries(unsigned a_iNumber)
Remove a value number of entries from the bytecode.
Definition: muParserBytecode.cpp:306
Namespace for mathematical applications.
Definition: muParser.cpp:47
unsigned GetPtrSize() const
Return size of a pointer entry.
Definition: muParserBytecode.h:143
Bytecode implementation of the Math Parser.
Definition: muParserBytecode.h:56
This file contains the parser token definition.
void clear()
Delete the bytecode.
Definition: muParserBytecode.cpp:295
void AddVar(value_type *a_pVar)
Add a Variable pointer to bytecode.
Definition: muParserBytecode.cpp:141
void AddFun(void *a_pFun, int a_iArgc)
Add function to bytecode.
Definition: muParserBytecode.cpp:220
ParserByteCode & operator=(const ParserByteCode &a_ByteCode)
Assignment operator.
Definition: muParserBytecode.cpp:80
const map_type * GetRawData() const
Get Pointer to bytecode data storage.
Definition: muParserBytecode.cpp:274
void Finalize()
Add end marker to bytecode.
Definition: muParserBytecode.cpp:262
This file defines the error class used by the parser.
This file contains standard definitions used by the parser.