🛰️航天仿真算法库 SpaceAST 0.0.1
载入中...
搜索中...
未找到
ast::ExprRange类 参考

#include <ExprRange.hpp>

+ 类 ast::ExprRange 继承关系图:

Public 成员函数

 ExprRange (Expr *start, Expr *stop, Expr *step=nullptr)
 
Exprstart () const
 
Exprstop () const
 
Exprstep () const
 
Valueeval () const override
 
std::string getExpression (Object *context) const override
 
- Public 成员函数 继承自 ast::Expr
virtual void accept (ExprVisitor &visitor)=0
 
virtual Exprexec () const
 
virtual errc_t setValue (Value *val)
 
 Object ()
 
 Object (Object *parentScope)
 
 Object (std::nullptr_t)
 
 Object (const Object &obj)
 
- Public 成员函数 继承自 ast::Object
 Object (Object *parentScope)
 
 Object (std::nullptr_t)
 
virtual ClassgetType () const
 
virtual const std::string & getName () const
 
errc_t openEditDialog ()
 
Attribute attr (StringView path)
 
errc_t getAttrBool (StringView path, bool &value) const
 
errc_t getAttrInt (StringView path, int &value) const
 
errc_t getAttrDouble (StringView path, double &value) const
 
errc_t getAttrString (StringView path, std::string &value) const
 
double getAttrDouble (StringView path) const
 
int getAttrInt (StringView path) const
 
bool getAttrBool (StringView path) const
 
std::string getAttrString (StringView path) const
 
errc_t setAttrBool (StringView path, bool value)
 
errc_t setAttrInt (StringView path, int value)
 
errc_t setAttrDouble (StringView path, double value)
 
errc_t setAttrString (StringView path, StringView value)
 
Classtype () const
 
PropertygetProperty (StringView fieldName) const
 
uint32_t getID () const
 
errc_t setParentScope (Object *parentScope)
 
ObjectgetParentScope () const
 
uint32_t refCount () const
 
uint32_t weakRefCount () const
 
bool isDestructed () const
 
void destruct ()
 
uint32_t incWeakRef ()
 
uint32_t decWeakRef ()
 
uint32_t incRef ()
 
uint32_t decRef ()
 
uint32_t decRefNoDelete ()
 

Protected 属性

SharedPtr< Exprstart_
 
SharedPtr< Exprstop_
 
SharedPtr< Exprstep_
 

额外继承的成员函数

- 静态 Public 成员函数 继承自 ast::Object
static ClassgetStaticType ()
 
- 静态 Public 属性 继承自 ast::Object
static Class staticType
 
- Protected 成员函数 继承自 ast::Object
 Object (const Object &obj)
 
Objectoperator= (const Object &obj)
 

详细描述

范围表达式

范围表达式用于表示一个范围,包含起始值、结束值和步长(可选)。 步长表达式可选,默认值为1。

构造及析构函数说明

◆ ExprRange()

ast::ExprRange::ExprRange ( Expr * start,
Expr * stop,
Expr * step = nullptr )

范围表达式构造函数

参数
start范围的起始值表达式
stop范围的结束值表达式
step范围的步长表达式(可选)

成员函数说明

◆ eval()

Value * ast::ExprRange::eval ( ) const
overridevirtual

评估范围表达式

返回
范围表达式的结果值

实现了 ast::Expr.

◆ getExpression()

std::string ast::ExprRange::getExpression ( Object * context) const
overridevirtual

获取范围表达式的字符串表示

参数
context上下文对象(可选)
返回
范围表达式的字符串表示

实现了 ast::Expr.

◆ start()

Expr * ast::ExprRange::start ( ) const
inline

获取范围的起始值表达式

返回
范围的起始值表达式

◆ step()

Expr * ast::ExprRange::step ( ) const
inline

获取范围的步长表达式

返回
范围的步长表达式
警告
可能返回nullptr,此时表示步长表达式未指定,默认值为1

◆ stop()

Expr * ast::ExprRange::stop ( ) const
inline

获取范围的结束值表达式

返回
范围的结束值表达式

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