33 nbool isReturnable()
const;
36 virtual void visit(const visitInfo& i, T& me); \
37 virtual nbool onVisit(const visitInfo& i, T& me, nbool alreadyVisited); \
38 virtual void onLeave(const visitInfo& i, T& me, nbool alreadyVisited);
43 virtual nbool onVisit(
const visitInfo& i,
node& me, nbool alreadyVisited);
44 virtual void onLeave(
const visitInfo& i,
node& me, nbool alreadyVisited);
72 void _onWork()
override;
73 void _prepare()
override;
77 nbool _markVisited(
node& me);
86 std::map<node*, nbool> _visited;
Fundamental Binary Operation expression.
Definition: FBOExpr.hpp:17
Type casting expression.
Definition: asExpr.hpp:16
Assignment expression for variable assignment.
Definition: assignExpr.hpp:16
Block expression containing multiple statements.
Definition: blockExpr.hpp:15
arr definition expression
Definition: defArrayExpr.hpp:13
Nested func definition expression (lambda)
Definition: defNestedFuncExpr.hpp:13
Variable definition expression base class.
Definition: defVarExpr.hpp:17
For loop expression.
Definition: forExpr.hpp:14
Execution frame for byeol runtime.
Definition: frame.hpp:29
Function definition in byeol language.
Definition: func.hpp:20
Generic type origin with type parameters.
Definition: genericOrigin.hpp:15
Expression for property and method access.
Definition: getExpr.hpp:17
If conditional expression.
Definition: ifExpr.hpp:13
Base class for all AST nodes in byeol language.
Definition: node.hpp:30
Managed object in byeol programming environment.
Definition: obj.hpp:19
Return statement expression.
Definition: retExpr.hpp:14
Base class for return state expressions.
Definition: retStateExpr.hpp:19
Function/method call expression.
Definition: runExpr.hpp:14
Visitor context information.
Definition: visitInfo.hpp:10
Base visitor class for AST traversal.
Definition: visitor.hpp:20
void setReturnable(nbool isReturnable)
While loop expression.
Definition: whileExpr.hpp:12
Base worker template for processing tasks.
Definition: worker.hpp:28