diff options
6 files changed, 9 insertions, 0 deletions
diff --git a/src/main/java/org/zwobble/hobgoblin/compiler/ast/typed/TypedStructDefinitionNode.java b/src/main/java/org/zwobble/hobgoblin/compiler/ast/typed/TypedStructDefinitionNode.java index d1666c2..0472496 100644 --- a/src/main/java/org/zwobble/hobgoblin/compiler/ast/typed/TypedStructDefinitionNode.java +++ b/src/main/java/org/zwobble/hobgoblin/compiler/ast/typed/TypedStructDefinitionNode.java @@ -8,6 +8,7 @@ import java.util.List; public record TypedStructDefinitionNode( StructType type, List<TypedStructFieldDefinitionNode> fields, + String docComment, Source source ) implements TypedNamespaceStatementNode { public String name() { diff --git a/src/main/java/org/zwobble/hobgoblin/compiler/ast/untyped/UntypedStructDefinitionNode.java b/src/main/java/org/zwobble/hobgoblin/compiler/ast/untyped/UntypedStructDefinitionNode.java index 50f1156..139db67 100644 --- a/src/main/java/org/zwobble/hobgoblin/compiler/ast/untyped/UntypedStructDefinitionNode.java +++ b/src/main/java/org/zwobble/hobgoblin/compiler/ast/untyped/UntypedStructDefinitionNode.java @@ -7,6 +7,7 @@ import java.util.List; public record UntypedStructDefinitionNode( String name, List<UntypedStructFieldDefinitionNode> fields, + String docComment, Source source ) implements UntypedNamespaceStatementNode { } diff --git a/src/main/java/org/zwobble/hobgoblin/compiler/parser/Parser.java b/src/main/java/org/zwobble/hobgoblin/compiler/parser/Parser.java index d60b249..a4b4743 100644 --- a/src/main/java/org/zwobble/hobgoblin/compiler/parser/Parser.java +++ b/src/main/java/org/zwobble/hobgoblin/compiler/parser/Parser.java @@ -81,6 +81,7 @@ public class Parser { return new UntypedStructDefinitionNode( name.charSequence().toString(), fields, + "", source ); } diff --git a/src/main/java/org/zwobble/hobgoblin/compiler/typechecker/TypeChecker.java b/src/main/java/org/zwobble/hobgoblin/compiler/typechecker/TypeChecker.java index 5219d4d..6574b52 100644 --- a/src/main/java/org/zwobble/hobgoblin/compiler/typechecker/TypeChecker.java +++ b/src/main/java/org/zwobble/hobgoblin/compiler/typechecker/TypeChecker.java @@ -89,6 +89,7 @@ public class TypeChecker { return new TypedStructDefinitionNode( structType, typedFields, + untyped.docComment(), untyped.source() ); } diff --git a/src/test/java/org/zwobble/hobgoblin/compiler/typechecker/TypeCheckerNamespaceTests.java b/src/test/java/org/zwobble/hobgoblin/compiler/typechecker/TypeCheckerNamespaceTests.java index 737c7db..1bb84d1 100644 --- a/src/test/java/org/zwobble/hobgoblin/compiler/typechecker/TypeCheckerNamespaceTests.java +++ b/src/test/java/org/zwobble/hobgoblin/compiler/typechecker/TypeCheckerNamespaceTests.java @@ -23,6 +23,7 @@ public class TypeCheckerNamespaceTests { new UntypedStructDefinitionNode( "X", List.of(), + "", NullSource.INSTANCE ) ), diff --git a/src/test/java/org/zwobble/hobgoblin/compiler/typechecker/TypeCheckerStructDefinitionTests.java b/src/test/java/org/zwobble/hobgoblin/compiler/typechecker/TypeCheckerStructDefinitionTests.java index 6cd6732..117bce4 100644 --- a/src/test/java/org/zwobble/hobgoblin/compiler/typechecker/TypeCheckerStructDefinitionTests.java +++ b/src/test/java/org/zwobble/hobgoblin/compiler/typechecker/TypeCheckerStructDefinitionTests.java @@ -27,6 +27,7 @@ public class TypeCheckerStructDefinitionTests { var untyped = new UntypedStructDefinitionNode( "X", List.of(), + "", NullSource.INSTANCE ); var context = TypeCheckerContextArb.namespaceContext(NamespaceName.of("a", "b")); @@ -53,6 +54,7 @@ public class TypeCheckerStructDefinitionTests { new UntypedStructFieldDefinitionNode("a", UntypedArb.typeLevelReference("Int32"), NullSource.INSTANCE), new UntypedStructFieldDefinitionNode("b", UntypedArb.typeLevelReference("Int64"), NullSource.INSTANCE) ), + "", NullSource.INSTANCE ); var context = TypeCheckerContextArb.namespaceContext(NamespaceName.of("a", "b")); @@ -102,6 +104,7 @@ public class TypeCheckerStructDefinitionTests { List.of( new UntypedStructFieldDefinitionNode("value", UntypedArb.typeLevelReference("Y"), NullSource.INSTANCE) ), + "", NullSource.INSTANCE ), new UntypedStructDefinitionNode( @@ -109,6 +112,7 @@ public class TypeCheckerStructDefinitionTests { List.of( new UntypedStructFieldDefinitionNode("value", UntypedArb.typeLevelReference("Int32"), NullSource.INSTANCE) ), + "", NullSource.INSTANCE ) ), |
