From 777935c03a692b9f21f73b6a5fd3a49f49572374 Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Mon, 3 Jul 2023 19:56:31 +0100 Subject: Parse val as namespace statement --- .../shedlang/compiler/ast/untyped/UntypedNodeMatchers.java | 2 +- .../java/org/shedlang/compiler/parser/ParserValTests.java | 12 ++++++++++++ 2 files changed, 13 insertions(+), 1 deletion(-) (limited to 'src/test/java') diff --git a/src/test/java/org/shedlang/compiler/ast/untyped/UntypedNodeMatchers.java b/src/test/java/org/shedlang/compiler/ast/untyped/UntypedNodeMatchers.java index aeee9df1..a848b601 100644 --- a/src/test/java/org/shedlang/compiler/ast/untyped/UntypedNodeMatchers.java +++ b/src/test/java/org/shedlang/compiler/ast/untyped/UntypedNodeMatchers.java @@ -77,7 +77,7 @@ public class UntypedNodeMatchers { ); } - public static Matcher isUntypedValNode( + public static Matcher isUntypedValNode( Matcher target, Matcher expression ) { diff --git a/src/test/java/org/shedlang/compiler/parser/ParserValTests.java b/src/test/java/org/shedlang/compiler/parser/ParserValTests.java index 99b07e54..00d2ef62 100644 --- a/src/test/java/org/shedlang/compiler/parser/ParserValTests.java +++ b/src/test/java/org/shedlang/compiler/parser/ParserValTests.java @@ -18,4 +18,16 @@ public class ParserValTests { isUntypedReferenceNode("y") )); } + + @Test + public void canParseValAsNamespaceStatement() { + var source = "val x = y;"; + + var node = parseString(source, Parser::parseNamespaceStatement); + + assertThat(node, isUntypedValNode( + isUntypedTargetVariableNode("x"), + isUntypedReferenceNode("y") + )); + } } -- cgit v1.2.3