From 334782898b59817a00a3ee9b8031cd974178d1ec Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Fri, 30 Jun 2023 19:51:50 +0100 Subject: Define builtin modules outside of code gen --- .../shedlang/compiler/stackir/StackCompilerNamespaceTests.java | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'src/test/java/org') diff --git a/src/test/java/org/shedlang/compiler/stackir/StackCompilerNamespaceTests.java b/src/test/java/org/shedlang/compiler/stackir/StackCompilerNamespaceTests.java index 1ed17236..44f45c1d 100644 --- a/src/test/java/org/shedlang/compiler/stackir/StackCompilerNamespaceTests.java +++ b/src/test/java/org/shedlang/compiler/stackir/StackCompilerNamespaceTests.java @@ -4,6 +4,9 @@ import org.junit.jupiter.api.Test; import org.shedlang.compiler.ast.typed.Typed; import org.shedlang.compiler.ast.typed.TypedFunctionDefinitionNode; import org.shedlang.compiler.stackir.instructions.DefineFunctionInstruction; +import org.shedlang.compiler.stackir.instructions.FieldLoadInstruction; +import org.shedlang.compiler.stackir.instructions.LocalStoreInstruction; +import org.shedlang.compiler.stackir.instructions.NamespaceImportInstruction; import org.shedlang.compiler.types.NamespaceName; import org.shedlang.compiler.types.Types; @@ -34,6 +37,11 @@ public class StackCompilerNamespaceTests { var instructions = StackCompiler.compileNamespace(node); assertThat(instructions, isSequence( + // TODO: test the builtin loading properly + instanceOf(NamespaceImportInstruction.class), + instanceOf(FieldLoadInstruction.class), + instanceOf(LocalStoreInstruction.class), + instanceOf( DefineFunctionInstruction.class, has("name", x -> x.name(), equalTo("f")) -- cgit v1.2.3