public IfStmt(Expr condition, Stmt thenBranch, Stmt elseBranch) { this.condition = condition; this.thenBranch = thenBranch; this.elseBranch = elseBranch; }
public ExpressionStmt(Expr expression) { this.expression = expression; }
public WhileStmt(Expr condition, Stmt body) { this.condition = condition; this.body = body; }
public VarStmt(Token name, Expr initializer) { this.name = name; this.initializer = initializer; }
public ReturnStmt(Token keyword, Expr value) { this.keyword = keyword; this.value = value; }
public PrintStmt(Expr expression) { this.expression = expression; }