src/jdk.internal.vm.compiler/share/classes/org.graalvm.graphio/src/org/graalvm/graphio/ProtocolImpl.java
--- a/src/jdk.internal.vm.compiler/share/classes/org.graalvm.graphio/src/org/graalvm/graphio/ProtocolImpl.java Fri Mar 16 11:26:05 2018 +0000
+++ b/src/jdk.internal.vm.compiler/share/classes/org.graalvm.graphio/src/org/graalvm/graphio/ProtocolImpl.java Fri Mar 16 22:59:32 2018 -0700
@@ -128,7 +128,11 @@
@Override
protected Object findType(Port edges, int i) {
- return structure.edgeType(edges, i);
+ Object type = structure.edgeType(edges, i);
+ if (findEnumOrdinal(type) < 0) {
+ throw new IllegalStateException("edgeType method shall return an enum! Was: " + type);
+ }
+ return type;
}
@Override
@@ -138,7 +142,11 @@
@Override
protected Object findJavaClass(NodeClass clazz) {
- return structure.nodeClassType(clazz);
+ final Object type = structure.nodeClassType(clazz);
+ if (!(type instanceof Class<?>) && findJavaTypeName(type) == null) {
+ throw new IllegalStateException("nodeClassType method shall return a Java class (instance of Class)! Was: " + type);
+ }
+ return type;
}
@Override