summaryrefslogtreecommitdiff
path: root/src/main
diff options
context:
space:
mode:
Diffstat (limited to 'src/main')
-rw-r--r--src/main/java/org/zwobble/hobgoblin/compiler/output/generators/javatypes/JavaTypesGenerator.java3
-rw-r--r--src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaClassDeclaration.java1
-rw-r--r--src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaCustomArea.java7
-rw-r--r--src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaInterfaceDeclaration.java1
-rw-r--r--src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaRecordDeclaration.java1
-rw-r--r--src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaTypeDeclaration.java1
6 files changed, 14 insertions, 0 deletions
diff --git a/src/main/java/org/zwobble/hobgoblin/compiler/output/generators/javatypes/JavaTypesGenerator.java b/src/main/java/org/zwobble/hobgoblin/compiler/output/generators/javatypes/JavaTypesGenerator.java
index d2b1073..77c2ecd 100644
--- a/src/main/java/org/zwobble/hobgoblin/compiler/output/generators/javatypes/JavaTypesGenerator.java
+++ b/src/main/java/org/zwobble/hobgoblin/compiler/output/generators/javatypes/JavaTypesGenerator.java
@@ -115,6 +115,7 @@ public class JavaTypesGenerator implements Generator {
sumDefinition.variants().stream()
.map(variant -> generateTypeRef(variant.type(), context))
.toList(),
+ JavaCustomArea.EMPTY,
sumDefinition.docComment()
)
);
@@ -167,6 +168,7 @@ public class JavaTypesGenerator implements Generator {
),
generateStructDefinitionBuilder(structDefinition, components, context)
),
+ JavaCustomArea.EMPTY,
structDefinition.docComment()
);
}
@@ -214,6 +216,7 @@ public class JavaTypesGenerator implements Generator {
components,
List.of(),
body,
+ JavaCustomArea.EMPTY,
DocComment.EMPTY
);
}
diff --git a/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaClassDeclaration.java b/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaClassDeclaration.java
index 948be8d..4e6c4b7 100644
--- a/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaClassDeclaration.java
+++ b/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaClassDeclaration.java
@@ -7,6 +7,7 @@ import java.util.List;
public record JavaClassDeclaration(
String name,
List<JavaClassBodyDeclaration> body,
+ JavaCustomArea customArea,
DocComment docComment
) implements JavaTypeDeclaration {
}
diff --git a/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaCustomArea.java b/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaCustomArea.java
new file mode 100644
index 0000000..42d38d1
--- /dev/null
+++ b/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaCustomArea.java
@@ -0,0 +1,7 @@
+package org.zwobble.hobgoblin.compiler.output.lang.java.ast;
+
+import java.util.List;
+
+public record JavaCustomArea(List<String> lines) {
+ public static final JavaCustomArea EMPTY = new JavaCustomArea(List.of());
+}
diff --git a/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaInterfaceDeclaration.java b/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaInterfaceDeclaration.java
index 2f5a5b4..c1c0fc5 100644
--- a/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaInterfaceDeclaration.java
+++ b/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaInterfaceDeclaration.java
@@ -7,6 +7,7 @@ import java.util.List;
public record JavaInterfaceDeclaration(
String name,
List<JavaTypeRef> permitsTypes,
+ JavaCustomArea customArea,
DocComment docComment
) implements JavaTypeDeclaration {
}
diff --git a/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaRecordDeclaration.java b/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaRecordDeclaration.java
index 0805a46..709d889 100644
--- a/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaRecordDeclaration.java
+++ b/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaRecordDeclaration.java
@@ -9,6 +9,7 @@ public record JavaRecordDeclaration(
List<JavaRecordComponent> components,
List<JavaTypeRef> implementsTypes,
List<JavaClassBodyDeclaration> body,
+ JavaCustomArea customArea,
DocComment docComment
) implements JavaTypeDeclaration {
}
diff --git a/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaTypeDeclaration.java b/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaTypeDeclaration.java
index 2ad8967..0ad9dd2 100644
--- a/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaTypeDeclaration.java
+++ b/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaTypeDeclaration.java
@@ -2,4 +2,5 @@ package org.zwobble.hobgoblin.compiler.output.lang.java.ast;
public sealed interface JavaTypeDeclaration extends JavaClassBodyDeclaration permits JavaClassDeclaration, JavaInterfaceDeclaration, JavaRecordDeclaration {
String name();
+ JavaCustomArea customArea();
}