diff options
| author | Michael Williamson <mike@zwobble.org> | 2026-06-12 16:09:28 +0100 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2026-06-12 16:09:28 +0100 |
| commit | 25e248a60a8694647496785888402cb35f5712fd (patch) | |
| tree | 198c51fac4c2fe953fdc277fd36d1f9d6116c26c /src/main | |
| parent | 5e716345a8863240b87456dd836970ad65a03449 (diff) | |
Implement toMatcher() with instanceOf()
Diffstat (limited to 'src/main')
| -rw-r--r-- | src/main/java/org/zwobble/hobgoblin/compiler/output/generators/javapreciselymatchers/JavaPreciselyMatchersGenerator.java | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/src/main/java/org/zwobble/hobgoblin/compiler/output/generators/javapreciselymatchers/JavaPreciselyMatchersGenerator.java b/src/main/java/org/zwobble/hobgoblin/compiler/output/generators/javapreciselymatchers/JavaPreciselyMatchersGenerator.java index 3378f9c..ce64b5e 100644 --- a/src/main/java/org/zwobble/hobgoblin/compiler/output/generators/javapreciselymatchers/JavaPreciselyMatchersGenerator.java +++ b/src/main/java/org/zwobble/hobgoblin/compiler/output/generators/javapreciselymatchers/JavaPreciselyMatchersGenerator.java @@ -84,7 +84,12 @@ public class JavaPreciselyMatchersGenerator implements Generator { var matcherTypeName = structDefinition.name() + "Matcher"; var structType = structDefinition.type(); - var javaTypeRef = JavaTypeRef.topLevel( + var javaStructTypeRef = JavaTypeRef.topLevel( + namespaceToJavaPackageParts(structType.namespaceName()), + structDefinition.name() + ); + + var javaMatcherTypeRef = JavaTypeRef.topLevel( namespaceToJavaPackageParts(structType.namespaceName()), matcherTypeName ); @@ -138,11 +143,15 @@ public class JavaPreciselyMatchersGenerator implements Generator { JavaTypeRef.topLevelGeneric(List.of("org", "zwobble", "precisely"), "Matcher", List.of(JavaTypeRef.OBJECT)), List.of(), new JavaBlock(List.of( - new JavaReturn(new JavaNullLiteral()) + new JavaReturn(new JavaStaticMethodCall( + JavaTypeRef.topLevel(List.of("org", "zwobble", "precisely"), "Matchers"), + "instanceOf", + List.of(new JavaStaticFieldAccess(javaStructTypeRef, "class")) + )) )) ) ), - JavaCustomArea.type(javaTypeRef, "body"), + JavaCustomArea.type(javaMatcherTypeRef, "body"), DocComment.EMPTY ); } |
