22 #ifndef QMUPARSERBYTECODE_H
23 #define QMUPARSERBYTECODE_H
38 QT_WARNING_DISABLE_CLANG(
"-Wnested-anon-types")
93 void AddVar(qreal *a_pVar);
94 void AddVal(qreal a_fVal);
97 void AddAssignOp(qreal *a_pVar);
101 void EnableOptimizer(
bool bStat);
104 int GetMaxStackSize()
const;
106 const SToken* GetBase()
const;
126 void ConstantFolding(
ECmdCode a_Oprt);
130 inline void QmuParserByteCode::EnableOptimizer(
bool bStat)
132 m_bEnableOptimizer = bStat;
136 inline int QmuParserByteCode::GetMaxStackSize()
const
138 return static_cast<int>(m_iMaxStackSize+1);
146 inline int QmuParserByteCode::GetSize()
const
148 return m_vRPN.size();
Bytecode implementation of the Math Parser.
unsigned m_iMaxStackSize
Maximum size needed for the stack.
unsigned m_iStackPos
Position in the Calculation array.
rpn_type m_vRPN
The actual rpn storage.
QVector< SToken > rpn_type
Token vector for storing the RPN.
QmuParserToken< qreal, string_type > token_type
Token type for internal use only.
Encapsulation of the data for a single formula token.
Namespace for mathematical applications.
qreal(* generic_fun_type)()
Callback type used for functions without arguments.
This file contains standard definitions used by the parser.
This file contains the parser token definition.