diff options
| author | Michael Williamson <mike@zwobble.org> | 2023-09-28 14:21:12 +0100 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2023-09-28 14:21:12 +0100 |
| commit | 862359008799b4038c32d909cd31808421e60739 (patch) | |
| tree | e38320c972825deac796ef13d80d592d62709e2c /src/main/java | |
| parent | 8bcc629a7c6d7d30b403c0a13ee032e7e75298e8 (diff) | |
Store struct type instead of name in typed struct definition node
Diffstat (limited to 'src/main/java')
| -rw-r--r-- | src/main/java/org/shedlang/compiler/ast/typed/TypedStructDefinitionNode.java | 3 | ||||
| -rw-r--r-- | src/main/java/org/shedlang/compiler/typechecker/TypeChecker.java | 2 |
2 files changed, 3 insertions, 2 deletions
diff --git a/src/main/java/org/shedlang/compiler/ast/typed/TypedStructDefinitionNode.java b/src/main/java/org/shedlang/compiler/ast/typed/TypedStructDefinitionNode.java index 4a956ee3..ac66bfae 100644 --- a/src/main/java/org/shedlang/compiler/ast/typed/TypedStructDefinitionNode.java +++ b/src/main/java/org/shedlang/compiler/ast/typed/TypedStructDefinitionNode.java @@ -1,11 +1,12 @@ package org.shedlang.compiler.ast.typed; import org.shedlang.compiler.sources.Source; +import org.shedlang.compiler.types.StructType; import java.util.List; public record TypedStructDefinitionNode( - String name, + StructType type, List<TypedStructFieldDefinitionNode> fields, Source source ) implements TypedNamespaceStatementNode { diff --git a/src/main/java/org/shedlang/compiler/typechecker/TypeChecker.java b/src/main/java/org/shedlang/compiler/typechecker/TypeChecker.java index 4644f695..737c4797 100644 --- a/src/main/java/org/shedlang/compiler/typechecker/TypeChecker.java +++ b/src/main/java/org/shedlang/compiler/typechecker/TypeChecker.java @@ -875,7 +875,7 @@ public class TypeChecker { context = context.addStructTypeInfo(type, new StructTypeInfo(fieldTypes)); var typedNode = new TypedStructDefinitionNode( - untyped.name(), + type, typedFieldNodes, untyped.source() ); |
