Doxygen
ExprAstUnary类 参考
+ 类 ExprAstUnary 继承关系图:
+ ExprAstUnary 的协作图:

Public 成员函数

 ExprAstUnary (Operator::Type op, ExprAstPtr &&expr)
 
virtual TemplateVariant resolve (TemplateContext *c)
 
- Public 成员函数 继承自 ExprAst
virtual ~ExprAst ()
 

Private 属性

Operator::Type m_operator = Operator::Or
 
ExprAstPtr m_expr
 

详细描述

在文件 template.cpp1802 行定义.

构造及析构函数说明

◆ ExprAstUnary()

ExprAstUnary::ExprAstUnary ( Operator::Type  op,
ExprAstPtr &&  expr 
)
inline

在文件 template.cpp1805 行定义.

1805  : m_operator(op), m_expr(std::move(expr))
1806  { TRACE(("ExprAstUnary %s\n",Operator::toString(op))); }

引用了 Operator::toString() , 以及 TRACE.

成员函数说明

◆ resolve()

virtual TemplateVariant ExprAstUnary::resolve ( TemplateContext c)
inlinevirtual

重载 ExprAst .

在文件 template.cpp1807 行定义.

1808  {
1809  TemplateVariant expr = m_expr->resolve(c);
1810  switch (m_operator)
1811  {
1812  case Operator::Minus:
1813  return -expr.toInt();
1814  default:
1815  return TemplateVariant();
1816  }
1817  }

引用了 m_expr, m_operator, Operator::Minus , 以及 TemplateVariant::toInt().

类成员变量说明

◆ m_expr

ExprAstPtr ExprAstUnary::m_expr
private

在文件 template.cpp1820 行定义.

被这些函数引用 resolve().

◆ m_operator

Operator::Type ExprAstUnary::m_operator = Operator::Or
private

在文件 template.cpp1819 行定义.

被这些函数引用 resolve().


该类的文档由以下文件生成:
ExprAstUnary::m_operator
Operator::Type m_operator
Definition: template.cpp:1819
Operator::Minus
@ Minus
Definition: template.cpp:574
TemplateVariant
Variant type which can hold one value of a fixed set of types.
Definition: template.h:98
Operator::toString
static const char * toString(Type op)
Definition: template.cpp:579
ExprAstUnary::m_expr
ExprAstPtr m_expr
Definition: template.cpp:1820
TRACE
#define TRACE(x)
Definition: template.cpp:40
TemplateVariant::toInt
int toInt() const
Returns the variant as an integer.
Definition: template.cpp:383