Package tech.ixor.calclox
Class AstPrinter
java.lang.Object
tech.ixor.calclox.AstPrinter
- All Implemented Interfaces:
Expr.Visitor<String>,Statement.Visitor<String>
The AST Printer for the CalcLox language that prints the generated AST structure from the code.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvisitAssignExpr(Expr.Assign expr) visitBinaryExpr(Expr.Binary expr) visitBlockStatement(Statement.Block statement) visitCallExpr(Expr.Call expr) visitDefineStatement(Statement.Define statement) visitExpressionStatement(Statement.Expression statement) visitFunctionStatement(Statement.Function statement) visitIfStatement(Statement.If statement) visitLiteralExpr(Expr.Literal expr) visitLogicalExpr(Expr.Logical expr) visitOutputStatement(Statement.Output statement) visitReturnStatement(Statement.Return statement) visitUnaryExpr(Expr.Unary expr) visitVarStatement(Statement.Var statement) visitWhileStatement(Statement.While statement)
-
Constructor Details
-
AstPrinter
public AstPrinter()
-
-
Method Details
-
visitAssignExpr
- Specified by:
visitAssignExprin interfaceExpr.Visitor<String>
-
visitBinaryExpr
- Specified by:
visitBinaryExprin interfaceExpr.Visitor<String>
-
visitCallExpr
- Specified by:
visitCallExprin interfaceExpr.Visitor<String>
-
visitGroupingExpr
- Specified by:
visitGroupingExprin interfaceExpr.Visitor<String>
-
visitLiteralExpr
- Specified by:
visitLiteralExprin interfaceExpr.Visitor<String>
-
visitLogicalExpr
- Specified by:
visitLogicalExprin interfaceExpr.Visitor<String>
-
visitUnaryExpr
- Specified by:
visitUnaryExprin interfaceExpr.Visitor<String>
-
visitVariableExpr
- Specified by:
visitVariableExprin interfaceExpr.Visitor<String>
-
visitBlockStatement
- Specified by:
visitBlockStatementin interfaceStatement.Visitor<String>
-
visitDefineStatement
- Specified by:
visitDefineStatementin interfaceStatement.Visitor<String>
-
visitExpressionStatement
- Specified by:
visitExpressionStatementin interfaceStatement.Visitor<String>
-
visitFunctionStatement
- Specified by:
visitFunctionStatementin interfaceStatement.Visitor<String>
-
visitIfStatement
- Specified by:
visitIfStatementin interfaceStatement.Visitor<String>
-
visitOutputStatement
- Specified by:
visitOutputStatementin interfaceStatement.Visitor<String>
-
visitReturnStatement
- Specified by:
visitReturnStatementin interfaceStatement.Visitor<String>
-
visitVarStatement
- Specified by:
visitVarStatementin interfaceStatement.Visitor<String>
-
visitWhileStatement
- Specified by:
visitWhileStatementin interfaceStatement.Visitor<String>
-