diff options
| author | Michael Williamson <mike@zwobble.org> | 2023-09-28 12:08:08 +0100 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2023-09-28 12:08:08 +0100 |
| commit | e539a12997f0c4bb8a10b1afecef15dd7a5ec310 (patch) | |
| tree | 72b1d1ab2e00f03a15a28baa9df4bd56b3d9029c /src/main/java | |
| parent | fccc76e339651d6451bb8fc7394f21eed96e3318 (diff) | |
Use orElseThrow() to avoid Optional.get()
Diffstat (limited to 'src/main/java')
| -rw-r--r-- | src/main/java/org/shedlang/compiler/typechecker/TypeChecker.java | 15 |
1 files changed, 4 insertions, 11 deletions
diff --git a/src/main/java/org/shedlang/compiler/typechecker/TypeChecker.java b/src/main/java/org/shedlang/compiler/typechecker/TypeChecker.java index ad3ed297..3cc5b541 100644 --- a/src/main/java/org/shedlang/compiler/typechecker/TypeChecker.java +++ b/src/main/java/org/shedlang/compiler/typechecker/TypeChecker.java @@ -409,22 +409,15 @@ public class TypeChecker { var structTypeInfo = context.structTypeInfo( receiverType, untyped.fieldName() - ); - - if (structTypeInfo.isEmpty()) { - throw new MissingStructTypeInfoError(receiverType, untyped.source()); - } + ).orElseThrow(() -> new MissingStructTypeInfoError(receiverType, untyped.source())); - var fieldType = structTypeInfo.get().fieldType(untyped.fieldName()); - - if (fieldType.isEmpty()) { - throw new NoSuchFieldError(receiverType, untyped.fieldName(), untyped.source()); - } + var fieldType = structTypeInfo.fieldType(untyped.fieldName()) + .orElseThrow(() -> new NoSuchFieldError(receiverType, untyped.fieldName(), untyped.source())); return context.toResult(new TypedFieldAccessNode( typedReceiver, untyped.fieldName(), - fieldType.get(), + fieldType, untyped.source() )); } |
