Mercurial > hg > truffle
comparison truffle/com.oracle.truffle.api.dsl/src/com/oracle/truffle/api/dsl/internal/SpecializationNode.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 | 6598b9b7aafd |
comparison
equal
deleted
inserted
replaced
22367:1b48778cee21 | 22368:0d4b0e4263ee |
---|---|
85 updateRootImpl(((SpecializedNode) node).getSpecializationNode(), node); | 85 updateRootImpl(((SpecializedNode) node).getSpecializationNode(), node); |
86 return node; | 86 return node; |
87 } | 87 } |
88 | 88 |
89 private static void updateRootImpl(SpecializationNode start, Node node) { | 89 private static void updateRootImpl(SpecializationNode start, Node node) { |
90 NodeFieldAccessor[] fields = NodeClass.get(start).getFields(); | 90 NodeFieldAccessor[] fields = NodeClass.Lookup.get(start).getFields(); |
91 for (int i = fields.length - 1; i >= 0; i--) { | 91 for (int i = fields.length - 1; i >= 0; i--) { |
92 NodeFieldAccessor f = fields[i]; | 92 NodeFieldAccessor f = fields[i]; |
93 if (f.getName().equals("root")) { | 93 if (f.getName().equals("root")) { |
94 f.putObject(start, node); | 94 f.putObject(start, node); |
95 break; | 95 break; |
506 | 506 |
507 protected Object unsupported(Frame frame, Object... args) { | 507 protected Object unsupported(Frame frame, Object... args) { |
508 throw new UnsupportedSpecializationException(findRoot(), getSuppliedChildren(), args); | 508 throw new UnsupportedSpecializationException(findRoot(), getSuppliedChildren(), args); |
509 } | 509 } |
510 | 510 |
511 /* Suppress FindBugs false positive. */ | |
512 @SuppressFBWarnings(value = "NP") | |
511 static SpecializationNode insertSorted(SpecializationNode start, final SpecializationNode generated, final CharSequence message, final SpecializationNode merged) { | 513 static SpecializationNode insertSorted(SpecializationNode start, final SpecializationNode generated, final CharSequence message, final SpecializationNode merged) { |
512 if (merged == generated) { | 514 if (merged == generated) { |
513 // new node | 515 // new node |
514 if (start.count() == 2) { | 516 if (start.count() == 2) { |
515 SpecializationNode polymorphic = start.createPolymorphic(); | 517 SpecializationNode polymorphic = start.createPolymorphic(); |