summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2026-05-17 10:18:51 +0100
committerMichael Williamson <mike@zwobble.org>2026-05-17 10:18:51 +0100
commitf5f84bd0d834d440cc2bf3f38bdee9d6ecf4518b (patch)
tree37e0b08c15668849a876f9866f6e00d9a6957dd4 /src
parent36a11cc4637ab14718ddf73921a1c0658c9056d0 (diff)
Add body to Java method nodes
Diffstat (limited to 'src')
-rw-r--r--src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaBlock.java5
-rw-r--r--src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaMethodDeclaration.java3
-rw-r--r--src/test/java/org/zwobble/hobgoblin/compiler/output/lang/java/JavaWriterTests.java18
3 files changed, 19 insertions, 7 deletions
diff --git a/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaBlock.java b/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaBlock.java
new file mode 100644
index 0000000..7ebbe29
--- /dev/null
+++ b/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaBlock.java
@@ -0,0 +1,5 @@
+package org.zwobble.hobgoblin.compiler.output.lang.java.ast;
+
+public record JavaBlock() {
+ public static final JavaBlock EMPTY = new JavaBlock();
+}
diff --git a/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaMethodDeclaration.java b/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaMethodDeclaration.java
index fb29f5c..c1cc44d 100644
--- a/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaMethodDeclaration.java
+++ b/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaMethodDeclaration.java
@@ -5,6 +5,7 @@ import java.util.List;
public record JavaMethodDeclaration(
String name,
JavaTypeRef returnType,
- List<JavaParam> params
+ List<JavaParam> params,
+ JavaBlock body
) implements JavaClassBodyDeclaration {
}
diff --git a/src/test/java/org/zwobble/hobgoblin/compiler/output/lang/java/JavaWriterTests.java b/src/test/java/org/zwobble/hobgoblin/compiler/output/lang/java/JavaWriterTests.java
index 28e7486..b6ad5d5 100644
--- a/src/test/java/org/zwobble/hobgoblin/compiler/output/lang/java/JavaWriterTests.java
+++ b/src/test/java/org/zwobble/hobgoblin/compiler/output/lang/java/JavaWriterTests.java
@@ -37,12 +37,14 @@ public class JavaWriterTests {
new JavaMethodDeclaration(
"a",
JavaTypeRef.VOID,
- List.of()
+ List.of(),
+ JavaBlock.EMPTY
),
new JavaMethodDeclaration(
"b",
JavaTypeRef.VOID,
- List.of()
+ List.of(),
+ JavaBlock.EMPTY
)
),
DocComment.EMPTY
@@ -177,12 +179,14 @@ public class JavaWriterTests {
new JavaMethodDeclaration(
"a",
JavaTypeRef.VOID,
- List.of()
+ List.of(),
+ JavaBlock.EMPTY
),
new JavaMethodDeclaration(
"b",
JavaTypeRef.VOID,
- List.of()
+ List.of(),
+ JavaBlock.EMPTY
)
),
DocComment.EMPTY
@@ -206,7 +210,8 @@ public class JavaWriterTests {
var java = new JavaMethodDeclaration(
"a",
JavaTypeRef.VOID,
- List.of()
+ List.of(),
+ JavaBlock.EMPTY
);
var string = write(writer -> writer.writeMethodDeclaration(java));
@@ -225,7 +230,8 @@ public class JavaWriterTests {
List.of(
new JavaParam(JavaTypeRef.INT, "b"),
new JavaParam(JavaTypeRef.LONG, "c")
- )
+ ),
+ JavaBlock.EMPTY
);
var string = write(writer -> writer.writeMethodDeclaration(java));