23 template <
typename... Es>
blockExpr(
const Es&... elems): _exprs(elems...) {}
27 str run(
const args& a)
override;
31 void setEval(
const node& newEval);
32 void setEval(
const node* it) BY_SIDE_FUNC(setEval);
34 const narr& getStmts() const BY_CONST_FUNC(getStmts())
42 using super::outFrame;
43 void outFrame() const override;
45 void onCloneDeep(const
clonable& from) override;
47 nbool isAbstract() const;
Function call arguments container.
Definition: args.hpp:13
Block expression containing multiple statements.
Definition: blockExpr.hpp:15
str getEval() const override
Interface for objects that can be cloned.
Definition: clonable.hpp:12
Type information for expression nodes
Definition: expr.hpp:22
Base class for all expressions.
Definition: expr.hpp:15
Function definition in byeol language.
Definition: func.hpp:20
Base class for all AST nodes in byeol language.
Definition: node.hpp:30
Template bidirectional container interface.
Definition: tbicontainable.hpp:17
AST verifier for semantic analysis.
Definition: verifier.hpp:20