diff options
| author | Michael Williamson <mike@zwobble.org> | 2023-07-09 19:13:02 +0100 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2023-07-09 19:13:02 +0100 |
| commit | bf55e95953edeefad8e83c034bfb4920d99c29ba (patch) | |
| tree | 7e5e5060bf88af358e90e4d03cccc4c80f7630a3 /src/test/java/org/shedlang/compiler/ast | |
| parent | de846b1c61ba146da38be8a347d1c70dece75e52 (diff) | |
Add UntypedBlockNode
Diffstat (limited to 'src/test/java/org/shedlang/compiler/ast')
| -rw-r--r-- | src/test/java/org/shedlang/compiler/ast/untyped/UntypedFunctionDefinitionNodeMatcher.java | 2 | ||||
| -rw-r--r-- | src/test/java/org/shedlang/compiler/ast/untyped/UntypedNodeMatchers.java | 10 |
2 files changed, 9 insertions, 3 deletions
diff --git a/src/test/java/org/shedlang/compiler/ast/untyped/UntypedFunctionDefinitionNodeMatcher.java b/src/test/java/org/shedlang/compiler/ast/untyped/UntypedFunctionDefinitionNodeMatcher.java index 8dae4a31..b94432da 100644 --- a/src/test/java/org/shedlang/compiler/ast/untyped/UntypedFunctionDefinitionNodeMatcher.java +++ b/src/test/java/org/shedlang/compiler/ast/untyped/UntypedFunctionDefinitionNodeMatcher.java @@ -29,7 +29,7 @@ public class UntypedFunctionDefinitionNodeMatcher extends MatcherBuilder<Untyped return new UntypedFunctionDefinitionNodeMatcher(submatchers); } - public UntypedFunctionDefinitionNodeMatcher withBody(Matcher<Iterable<? extends UntypedFunctionStatementNode>> body) { + public UntypedFunctionDefinitionNodeMatcher withBody(Matcher<UntypedBlockNode> body) { return with(has("body", x -> x.body(), body)); } 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 dce29e55..8ea1e13b 100644 --- a/src/test/java/org/shedlang/compiler/ast/untyped/UntypedNodeMatchers.java +++ b/src/test/java/org/shedlang/compiler/ast/untyped/UntypedNodeMatchers.java @@ -34,6 +34,12 @@ public class UntypedNodeMatchers { ); } + public static Matcher<UntypedBlockNode> isUntypedBlockNode( + Matcher<Iterable<? extends UntypedFunctionStatementNode>> statements + ) { + return has("statements", x -> x.statements(), statements); + } + public static Matcher<UntypedFunctionStatementNode> isUntypedBlockReturnNode( Matcher<UntypedExpressionNode> expression ) { @@ -49,7 +55,7 @@ public class UntypedNodeMatchers { public static Matcher<UntypedConditionalBranchNode> isUntypedConditionalBranchNode( Matcher<UntypedExpressionNode> condition, - Matcher<Iterable<? extends UntypedFunctionStatementNode>> body + Matcher<UntypedBlockNode> body ) { return instanceOf( UntypedConditionalBranchNode.class, @@ -89,7 +95,7 @@ public class UntypedNodeMatchers { public static Matcher<UntypedExpressionNode> isUntypedIfNode( Matcher<Iterable<? extends UntypedConditionalBranchNode>> conditionalBranches, - Matcher<Iterable<? extends UntypedFunctionStatementNode>> elseBody + Matcher<UntypedBlockNode> elseBody ) { return instanceOf( UntypedIfNode.class, |
