diff options
Diffstat (limited to 'src/main/java')
| -rw-r--r-- | src/main/java/org/shedlang/compiler/typechecker/TypeChecker.java | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/src/main/java/org/shedlang/compiler/typechecker/TypeChecker.java b/src/main/java/org/shedlang/compiler/typechecker/TypeChecker.java index 626ca456..9cd5e616 100644 --- a/src/main/java/org/shedlang/compiler/typechecker/TypeChecker.java +++ b/src/main/java/org/shedlang/compiler/typechecker/TypeChecker.java @@ -310,15 +310,16 @@ public class TypeChecker { } private static FunctionType receiverTypeToFunctionType(TypedExpressionNode typedReceiver) { - if (!(typedReceiver.type() instanceof FunctionType receiverType)) { - throw new UnexpectedTypeError( - TypeSets.FUNCTION, - typedReceiver.type(), - typedReceiver.source() - ); + if (typedReceiver.type() instanceof FunctionType receiverType) { + return receiverType; } - return receiverType; + throw new UnexpectedTypeError( + TypeSets.FUNCTION, + typedReceiver.type(), + typedReceiver.source() + ); + } private static TypeCheckerResult<TypedConditionalBranchNode> typeCheckConditionalBranch( |
