public Class(Token name, Expr superclass, List <Stmt.Function> methods) { Name = name; Superclass = superclass; Methods = methods; }
public Expression(Expr xpression) { Xpression = xpression; }
public While(Expr condition, Stmt body) { Condition = condition; Body = body; }
public Var(Token name, Expr initializer) { Name = name; Initializer = initializer; }
public Return(Token keyword, Expr value) { Keyword = keyword; Value = value; }
public Print(Expr xpression) { Xpression = xpression; }
public If(Expr condition, Stmt thenBranch, Stmt elseBranch) { Condition = condition; ThenBranch = thenBranch; ElseBranch = elseBranch; }