# HG changeset patch # User Andreas Woess # Date 1446630429 -3600 # Node ID 4df3d8fd6cfd95500d529284b337485803e1f603 # Parent bb3c03f2442d51df60e8f154c14b8b28ffe52dfc NodeClass cleanup diff -r bb3c03f2442d -r 4df3d8fd6cfd truffle/com.oracle.truffle.api/src/com/oracle/truffle/api/nodes/NodeClass.java --- a/truffle/com.oracle.truffle.api/src/com/oracle/truffle/api/nodes/NodeClass.java Tue Nov 03 14:09:13 2015 +0100 +++ b/truffle/com.oracle.truffle.api/src/com/oracle/truffle/api/nodes/NodeClass.java Wed Nov 04 10:47:09 2015 +0100 @@ -53,6 +53,8 @@ } }; + private static final NodeFieldAccessor[] EMPTY_NODE_FIELD_ARRAY = new NodeFieldAccessor[0]; + // The comprehensive list of all fields. private final NodeFieldAccessor[] fields; // Separate arrays for the frequently accessed fields. @@ -68,11 +70,11 @@ return nodeClasses.get(clazz); } - public static NodeClass get(Node clazz) { - return clazz.getNodeClass(); + public static NodeClass get(Node node) { + return node.getNodeClass(); } - public NodeClass(Class clazz) { + NodeClass(Class clazz) { List fieldsList = new ArrayList<>(); NodeFieldAccessor parentFieldTmp = null; NodeFieldAccessor nodeClassFieldTmp = null; @@ -115,12 +117,12 @@ throw new AssertionError("parent field not found"); } - this.fields = fieldsList.toArray(new NodeFieldAccessor[fieldsList.size()]); + this.fields = fieldsList.toArray(EMPTY_NODE_FIELD_ARRAY); this.nodeClassField = nodeClassFieldTmp; this.parentField = parentFieldTmp; - this.childFields = childFieldList.toArray(new NodeFieldAccessor[childFieldList.size()]); - this.childrenFields = childrenFieldList.toArray(new NodeFieldAccessor[childrenFieldList.size()]); - this.cloneableFields = cloneableFieldList.toArray(new NodeFieldAccessor[cloneableFieldList.size()]); + this.childFields = childFieldList.toArray(EMPTY_NODE_FIELD_ARRAY); + this.childrenFields = childrenFieldList.toArray(EMPTY_NODE_FIELD_ARRAY); + this.cloneableFields = cloneableFieldList.toArray(EMPTY_NODE_FIELD_ARRAY); this.clazz = clazz; }