From 364bfd15a9a62724a80ce27f09ec5e80a05dfcb1 Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Mon, 27 Jul 2026 20:28:30 +0100 Subject: Add multiplication to Java AST --- .../org/zwobble/hobgoblin/compiler/output/lang/java/JavaWriter.java | 3 +++ .../hobgoblin/compiler/output/lang/java/ast/JavaBinaryOperator.java | 1 + 2 files changed, 4 insertions(+) (limited to 'src/main/java/org') diff --git a/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/JavaWriter.java b/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/JavaWriter.java index 4e4d8e5..b593364 100644 --- a/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/JavaWriter.java +++ b/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/JavaWriter.java @@ -724,6 +724,7 @@ public class JavaWriter implements AutoCloseable { case LOGICAL_AND -> JavaPrecedence.LOGICAL_AND; case LEFT_SHIFT -> JavaPrecedence.SHIFT; case LESS_THAN -> JavaPrecedence.RELATIONAL; + case MULTIPLY -> JavaPrecedence.MULTIPLICATIVE; case NOT_EQUAL_TO -> JavaPrecedence.EQUALITY; case UNSIGNED_RIGHT_SHIFT -> JavaPrecedence.SHIFT; }; @@ -760,6 +761,7 @@ public class JavaWriter implements AutoCloseable { case LEFT_SHIFT -> "<<"; case LESS_THAN -> "<"; case LOGICAL_AND -> "&&"; + case MULTIPLY -> "*"; case NOT_EQUAL_TO -> "!="; case UNSIGNED_RIGHT_SHIFT -> ">>>"; }); @@ -781,6 +783,7 @@ public class JavaWriter implements AutoCloseable { case LEFT_SHIFT -> true; case LESS_THAN -> true; case LOGICAL_AND -> true; + case MULTIPLY -> true; case NOT_EQUAL_TO -> true; case UNSIGNED_RIGHT_SHIFT -> true; }; diff --git a/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaBinaryOperator.java b/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaBinaryOperator.java index 34d9d4e..e9c2a54 100644 --- a/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaBinaryOperator.java +++ b/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaBinaryOperator.java @@ -11,6 +11,7 @@ public enum JavaBinaryOperator { BITWISE_AND, BITWISE_OR, EQUAL_TO, + MULTIPLY, LEFT_SHIFT, LESS_THAN, LOGICAL_AND, -- cgit v1.2.3