🛰️航天仿真算法库 SpaceAST
0.0.1
载入中...
搜索中...
未找到
ExprContainer.hpp
浏览该文件的文档.
1
20
21
#pragma once
22
23
#include "AstGlobal.h"
24
#include "
Expr.hpp
"
25
#include "AstUtil/SharedPtr.hpp"
26
#include <vector>
27
28
AST_NAMESPACE_BEGIN
29
30
33
class
ExprContainer
:
public
Expr
34
{
35
public
:
36
using
VectorType = std::vector<SharedPtr<Expr>>;
37
38
ExprContainer
() =
default
;
39
40
ExprContainer
(
const
VectorType& elems)
41
: elems_(elems) {}
42
46
Expr
*
at
(
size_t
index)
const
{
return
elems_[index].get(); }
47
50
size_t
size
()
const
{
return
elems_.size(); }
51
54
void
push_back
(
Expr
* expr) { elems_.push_back(expr); }
55
58
const
VectorType&
children
()
const
{
return
elems_; }
59
protected
:
60
VectorType
elems_
;
61
};
62
63
AST_NAMESPACE_END
Expr.hpp
~
ast::ExprContainer
表达式容器类
定义
ExprContainer.hpp:34
ast::ExprContainer::size
size_t size() const
获取向量元素数量
定义
ExprContainer.hpp:50
ast::ExprContainer::at
Expr * at(size_t index) const
获取向量元素
定义
ExprContainer.hpp:46
ast::ExprContainer::push_back
void push_back(Expr *expr)
添加表达式到容器
定义
ExprContainer.hpp:54
ast::ExprContainer::children
const VectorType & children() const
获取表达式容器
定义
ExprContainer.hpp:58
ast::ExprContainer::elems_
VectorType elems_
表达式容器
定义
ExprContainer.hpp:60
ast::Expr
表达式基类
定义
Expr.hpp:39
src
AstScript
Expression
ExprContainer.hpp
制作者
1.12.0