aboutsummaryrefslogtreecommitdiffstats
path: root/src/com/craftinginterpreters/lox/AstPrinter.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/com/craftinginterpreters/lox/AstPrinter.java')
-rw-r--r--src/com/craftinginterpreters/lox/AstPrinter.java12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/com/craftinginterpreters/lox/AstPrinter.java b/src/com/craftinginterpreters/lox/AstPrinter.java
index 8f7be78..65f1916 100644
--- a/src/com/craftinginterpreters/lox/AstPrinter.java
+++ b/src/com/craftinginterpreters/lox/AstPrinter.java
@@ -53,6 +53,18 @@ class AstPrinter implements Expr.Visitor<String>, Stmt.Visitor<String> {
}
@Override
+ public String visitWhileStmt(Stmt.While statement) {
+ StringBuilder builder = new StringBuilder();
+
+ builder.append('(');
+ builder.append(parenthesize("while", statement.condition));
+ builder.append(parenthesize("do", statement.body));
+ builder.append(')');
+
+ return builder.toString();
+ }
+
+ @Override
public String visitPrintStmt(Stmt.Print statement) {
return parenthesize("print", statement.expression);
}