aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/main/java/org/zwobble/couscous/interpreter/values/ConcreteType.java4
-rw-r--r--src/test/java/org/zwobble/couscous/tests/util/ExtraAsserts.java12
2 files changed, 7 insertions, 9 deletions
diff --git a/src/main/java/org/zwobble/couscous/interpreter/values/ConcreteType.java b/src/main/java/org/zwobble/couscous/interpreter/values/ConcreteType.java
index 18259f0..a4902a4 100644
--- a/src/main/java/org/zwobble/couscous/interpreter/values/ConcreteType.java
+++ b/src/main/java/org/zwobble/couscous/interpreter/values/ConcreteType.java
@@ -42,9 +42,7 @@ public class ConcreteType {
methods.put(name, new MethodValue(argumentsTypes, (receiver, arguments) -> {
return Casts.tryCast(interpreterValueType, receiver)
.map(typedReceiver -> method.apply(typedReceiver, arguments))
- .orElseThrow(() -> {
- throw new RuntimeException("receiver is of wrong type");
- });
+ .orElseThrow(() -> new RuntimeException("receiver is of wrong type"));
}));
return this;
}
diff --git a/src/test/java/org/zwobble/couscous/tests/util/ExtraAsserts.java b/src/test/java/org/zwobble/couscous/tests/util/ExtraAsserts.java
index 98ea75a..c5f1668 100644
--- a/src/test/java/org/zwobble/couscous/tests/util/ExtraAsserts.java
+++ b/src/test/java/org/zwobble/couscous/tests/util/ExtraAsserts.java
@@ -1,19 +1,19 @@
package org.zwobble.couscous.tests.util;
import org.zwobble.couscous.util.Action;
+import org.zwobble.couscous.util.Casts;
+
+import lombok.SneakyThrows;
public class ExtraAsserts {
- @SuppressWarnings("unchecked")
+ @SneakyThrows
public static <T extends Throwable> T assertThrows(Class<T> exceptionType, Action action) {
try {
action.run();
throw new AssertionError("Expected exception");
} catch (Exception exception) {
- if (exceptionType.isInstance(exception)) {
- return (T)exception;
- } else {
- throw exception;
- }
+ return Casts.tryCast(exceptionType, exception)
+ .orElseThrow(() -> exception);
}
}
}