diff options
| author | Michael Williamson <mike@zwobble.org> | 2026-08-28 13:42:59 +0100 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2026-08-28 13:42:59 +0100 |
| commit | e64daf38c0b6c98ccd75af777c58708c395b1b95 (patch) | |
| tree | 23b3245c8b148e724147521548a7719715991b03 /src/main/java | |
| parent | a1f0d93e232b407c9c71c78936e783f664fc3b2d (diff) | |
Use IOException rather than RuntimeException for unrecognised tag
Diffstat (limited to 'src/main/java')
| -rw-r--r-- | src/main/java/org/zwobble/hobgoblin/compiler/output/generators/javatransient0/JavaTransient0Generator.java | 19 |
1 files changed, 9 insertions, 10 deletions
diff --git a/src/main/java/org/zwobble/hobgoblin/compiler/output/generators/javatransient0/JavaTransient0Generator.java b/src/main/java/org/zwobble/hobgoblin/compiler/output/generators/javatransient0/JavaTransient0Generator.java index 36052d5..3a7f0ff 100644 --- a/src/main/java/org/zwobble/hobgoblin/compiler/output/generators/javatransient0/JavaTransient0Generator.java +++ b/src/main/java/org/zwobble/hobgoblin/compiler/output/generators/javatransient0/JavaTransient0Generator.java @@ -804,15 +804,10 @@ public class JavaTransient0Generator implements Generator { cases.add(new JavaSwitchRule( new JavaCaseDefault(), new JavaBlock(List.of( - new JavaThrowStatement(new JavaNewExpression( - JavaTypeRef.RUNTIME_EXCEPTION, - List.of( - new JavaBinaryOperation( - JavaBinaryOperator.ADD, - new JavaStringLiteral("unrecognised variant tag for " + sumDefinition.type().describe() + ": "), - new JavaRef(variantTag) - ) - ) + throwIoException(new JavaBinaryOperation( + JavaBinaryOperator.ADD, + new JavaStringLiteral("unrecognised variant tag for " + sumDefinition.type().describe() + ": "), + new JavaRef(variantTag) )) )) )); @@ -1637,9 +1632,13 @@ public class JavaTransient0Generator implements Generator { } private static JavaThrowStatement throwIoException(String errorMessage) { + return throwIoException(new JavaStringLiteral(errorMessage)); + } + + private static JavaThrowStatement throwIoException(JavaExpression errorMessage) { return new JavaThrowStatement(new JavaNewExpression( JavaTypeRef.IO_EXCEPTION, - List.of(new JavaStringLiteral(errorMessage)) + List.of(errorMessage) )); } |
