Mercurial > hg > truffle
diff truffle/com.oracle.truffle.api/src/com/oracle/truffle/api/nodes/serial/PostOrderDeserializer.java @ 22368:0d4b0e4263ee
Convert NodeClass and NodeFieldAccessor to interfaces
author | Christian Wimmer <christian.wimmer@oracle.com> |
---|---|
date | Fri, 13 Nov 2015 10:29:52 -0800 |
parents | dc83cc1f94f2 |
children |
line wrap: on
line diff
--- a/truffle/com.oracle.truffle.api/src/com/oracle/truffle/api/nodes/serial/PostOrderDeserializer.java Fri Nov 13 16:25:04 2015 +0100 +++ b/truffle/com.oracle.truffle.api/src/com/oracle/truffle/api/nodes/serial/PostOrderDeserializer.java Fri Nov 13 10:29:52 2015 -0800 @@ -148,7 +148,7 @@ Node node = (Node) object; - NodeFieldAccessor[] nodeFields = NodeClass.get(nodeClass).getFields(); + NodeFieldAccessor[] nodeFields = NodeClass.Lookup.get(nodeClass).getFields(); deserializeChildrenFields(node, nodeFields); deserializeChildFields(node, nodeFields); deserializeDataFields(buffer, node, nodeFields); @@ -160,12 +160,12 @@ for (int i = 0; i < nodeFields.length; i++) { NodeFieldAccessor field = nodeFields[i]; if (field.getKind() == NodeFieldKind.DATA) { - Class<?> fieldClass = field.getType(); + Class<?> fieldClass = field.getFieldType(); long offset = getFieldOffset(field); // source sections are not serialized // TODO add support for source sections - if (field.getType().isAssignableFrom(SourceSection.class)) { + if (field.getFieldType().isAssignableFrom(SourceSection.class)) { continue; } @@ -243,7 +243,7 @@ for (int i = nodeFields.length - 1; i >= 0; i--) { NodeFieldAccessor field = nodeFields[i]; if (field.getKind() == NodeFieldKind.CHILD) { - unsafe.putObject(parent, getFieldOffset(field), popNode(parent, field.getType())); + unsafe.putObject(parent, getFieldOffset(field), popNode(parent, field.getFieldType())); } } } @@ -252,14 +252,14 @@ for (int i = nodeFields.length - 1; i >= 0; i--) { NodeFieldAccessor field = nodeFields[i]; if (field.getKind() == NodeFieldKind.CHILDREN) { - unsafe.putObject(parent, getFieldOffset(field), popArray(parent, field.getType())); + unsafe.putObject(parent, getFieldOffset(field), popArray(parent, field.getFieldType())); } } } private static Node updateParent(Node parent, Node child) { if (child != null) { - NodeClass nodeClass = NodeClass.get(child.getClass()); + NodeClass nodeClass = NodeClass.Lookup.get(child.getClass()); nodeClass.getNodeClassField().putObject(child, nodeClass); nodeClass.getParentField().putObject(child, parent); } @@ -271,7 +271,7 @@ return ((NodeFieldAccessor.AbstractUnsafeNodeFieldAccessor) field).getOffset(); } else { try { - Field reflectionField = field.getDeclaringClass().getDeclaredField(field.getName()); + Field reflectionField = field.getFieldDeclaringClass().getDeclaredField(field.getName()); return unsafe.objectFieldOffset(reflectionField); } catch (NoSuchFieldException | SecurityException e) { throw new RuntimeException(e);