|
fastdo
0.6.16
|
函数操作数 更多...
#include <eienexpr.hpp>


Public 类型 | |
| typedef bool(* | FuncFunction) (Expression *e, std::vector< Expression * > const ¶ms, winux::SimplePointer< ExprOperand > *outRetValue, void *data) |
| typedef std::map< winux::String, FuncFunction > | StringFuncMap |
Public 类型 继承自 eienexpr::ExprOperand | |
| enum | ExprOperandType { eotLiteral, eotIdentifier, eotReference, eotFunction, eotExpression } |
Public 类型 继承自 eienexpr::ExprAtom | |
| enum | ExprAtomType { eatOperator, eatOperand } |
Public 成员函数 | |
| ExprFunc (Expression *exprObj, winux::String const &funcName) | |
| virtual | ~ExprFunc () |
| ExprFunc (ExprFunc const &other) | |
| ExprFunc & | operator= (ExprFunc const &other) |
| virtual ExprAtom * | clone () const override |
| 克隆一个atom 更多... | |
| virtual winux::String | toString () const override |
| 字符串形式输出 更多... | |
| virtual bool | evaluate (winux::SimplePointer< ExprOperand > *result) const override |
| 计算,结果不一定是值,还可以是其他操作数 更多... | |
| void | _clear () |
| 释放参数内存 更多... | |
| void | _addParam (Expression *param) |
| 添加一个参数,param必须是new的或者clone()的 更多... | |
Public 成员函数 继承自 eienexpr::ExprOperand | |
| ExprOperand () | |
| virtual | ~ExprOperand () |
| winux::Mixed | val () const |
| 把操作数计算成可用的值,如果不能算,则抛出异常 更多... | |
| bool | evaluateMixedPtr (winux::Mixed **ppv) const |
| 求值取得Reference或Identifier,获取内部的Mixed指针 更多... | |
| ExprOperandType | getOperandType () const |
| 取得操作数类型 更多... | |
Public 成员函数 继承自 eienexpr::ExprAtom | |
| ExprAtom () | |
| virtual | ~ExprAtom () |
| ExprAtomType | getAtomType () const |
| 原子类型 更多... | |
Public 属性 | |
| Expression * | _exprObj |
| 所属表达式对象 更多... | |
| winux::String | _funcName |
| 函数名 更多... | |
| std::vector< Expression * > | _params |
| 参数,也是表达式 更多... | |
友元 | |
| class | ExprParser |
额外继承的成员函数 | |
Protected 属性 继承自 eienexpr::ExprOperand | |
| ExprOperandType | _operandType |
Protected 属性 继承自 eienexpr::ExprAtom | |
| ExprAtomType | _atomType |
函数操作数
在文件 eienexpr.hpp 第 251 行定义.
| typedef bool(* eienexpr::ExprFunc::FuncFunction) (Expression *e, std::vector< Expression * > const ¶ms, winux::SimplePointer< ExprOperand > *outRetValue, void *data) |
在文件 eienexpr.hpp 第 255 行定义.
| typedef std::map< winux::String, FuncFunction > eienexpr::ExprFunc::StringFuncMap |
在文件 eienexpr.hpp 第 257 行定义.
| eienexpr::ExprFunc::ExprFunc | ( | Expression * | exprObj, |
| winux::String const & | funcName | ||
| ) |
|
virtual |
| eienexpr::ExprFunc::ExprFunc | ( | ExprFunc const & | other | ) |
|
overridevirtual |
克隆一个atom
实现了 eienexpr::ExprAtom.
|
overridevirtual |
字符串形式输出
实现了 eienexpr::ExprAtom.
|
overridevirtual |
计算,结果不一定是值,还可以是其他操作数
| void eienexpr::ExprFunc::_clear | ( | ) |
释放参数内存
| void eienexpr::ExprFunc::_addParam | ( | Expression * | param | ) |
添加一个参数,param必须是new的或者clone()的
|
friend |
在文件 eienexpr.hpp 第 279 行定义.
| Expression* eienexpr::ExprFunc::_exprObj |
所属表达式对象
在文件 eienexpr.hpp 第 269 行定义.
| winux::String eienexpr::ExprFunc::_funcName |
函数名
在文件 eienexpr.hpp 第 270 行定义.
| std::vector<Expression *> eienexpr::ExprFunc::_params |
参数,也是表达式
在文件 eienexpr.hpp 第 271 行定义.