fastdo  0.6.8
eienexpr::ExprOperand类 参考abstract

表达式操作数 更多...

#include <eienexpr.hpp>

类 eienexpr::ExprOperand 继承关系图:
eienexpr::ExprOperand 的协作图:

Public 类型

enum  ExprOperandType {
  eotLiteral, eotIdentifier, eotReference, eotFunction,
  eotExpression
}
 
- Public 类型 继承自 eienexpr::ExprAtom
enum  ExprAtomType { eatOperator, eatOperand }
 

Public 成员函数

 ExprOperand ()
 
virtual ~ExprOperand ()
 
virtual bool evaluate (winux::SimplePointer< ExprOperand > *result)=0
 计算,结果不一定是值,还可以是其他操作数 更多...
 
winux::Mixed val ()
 把操作数计算成可用的值,如果不能算,则抛出异常 更多...
 
bool evaluateMixedPtr (winux::Mixed **ppv)
 计算,直到结果是指定的操作数或Literal。 更多...
 
ExprOperandType getOperandType () const
 取得操作数类型 更多...
 
- Public 成员函数 继承自 eienexpr::ExprAtom
 ExprAtom ()
 
virtual ~ExprAtom ()
 
ExprAtomType getAtomType () const
 原子类型 更多...
 
virtual ExprAtomclone () const =0
 克隆一个atom 更多...
 
virtual winux::String toString () const =0
 字符串形式输出 更多...
 

Protected 属性

ExprOperandType _operandType
 
- Protected 属性 继承自 eienexpr::ExprAtom
ExprAtomType _atomType
 

友元

class ExprParser
 

详细描述

表达式操作数

在文件 eienexpr.hpp141 行定义.

成员枚举类型说明

枚举值
eotLiteral 

普通的字面值

eotIdentifier 

标识符(变量)

eotReference 

内部引用

eotFunction 

函数

eotExpression 

子表达式

在文件 eienexpr.hpp144 行定义.

构造及析构函数说明

eienexpr::ExprOperand::ExprOperand ( )
virtual eienexpr::ExprOperand::~ExprOperand ( )
virtual

成员函数说明

virtual bool eienexpr::ExprOperand::evaluate ( winux::SimplePointer< ExprOperand > *  result)
pure virtual

计算,结果不一定是值,还可以是其他操作数

eienexpr::Expression, eienexpr::ExprFunc, eienexpr::ExprReference, eienexpr::ExprIdentifier , 以及 eienexpr::ExprLiteral 内被实现.

bool eienexpr::ExprOperand::evaluateMixedPtr ( winux::Mixed **  ppv)

计算,直到结果是指定的操作数或Literal。

计算到遇到Literal为止。 如果types[]不指定类型,则计算到Literal就返回true。 如果types[]指定类型,则计算到指定类型就返回true,否则返回false。 计算失败返回false。 求值取得Reference或Identifier,获取内部的Mixed指针

ExprOperandType eienexpr::ExprOperand::getOperandType ( ) const

取得操作数类型

winux::Mixed eienexpr::ExprOperand::val ( )

把操作数计算成可用的值,如果不能算,则抛出异常

友元及相关函数文档

friend class ExprParser
friend

在文件 eienexpr.hpp177 行定义.

类成员变量说明

ExprOperandType eienexpr::ExprOperand::_operandType
protected

在文件 eienexpr.hpp175 行定义.


该类的文档由以下文件生成: