From 862359008799b4038c32d909cd31808421e60739 Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Thu, 28 Sep 2023 14:21:12 +0100 Subject: Store struct type instead of name in typed struct definition node --- .../org/shedlang/compiler/ast/typed/TypedStructDefinitionNode.java | 3 ++- src/main/java/org/shedlang/compiler/typechecker/TypeChecker.java | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) (limited to 'src/main/java') 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 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() ); -- cgit v1.2.3