diff --git a/src/org/jetbrains/eval4j/values.kt b/src/org/jetbrains/eval4j/values.kt index db6617d286c..6eb79c28d9c 100644 --- a/src/org/jetbrains/eval4j/values.kt +++ b/src/org/jetbrains/eval4j/values.kt @@ -101,7 +101,11 @@ val Value.obj: Any? fun Any?.checkNull(): Any { if (this == null) { - throw ThrownFromEvalException(ObjectValue(NullPointerException(), Type.getType(javaClass()))) + throwException(NullPointerException()) } return this +} + +fun throwException(e: Throwable): Nothing { + throw ThrownFromEvalException(ObjectValue(e, Type.getType(e.javaClass))) } \ No newline at end of file diff --git a/test/org/jetbrains/eval4j/test/main.kt b/test/org/jetbrains/eval4j/test/main.kt index 65b4f0b3b62..491abb64a16 100644 --- a/test/org/jetbrains/eval4j/test/main.kt +++ b/test/org/jetbrains/eval4j/test/main.kt @@ -221,7 +221,7 @@ object REFLECTION_EVAL : Eval { } } catch (e: Throwable) { - throw ThrownFromEvalException(ObjectValue(e, Type.getType(e.javaClass))) + throwException(e) } }