diff graal/com.oracle.graal.graph/src/com/oracle/graal/graph/Graph.java @ 5488:21cab9000931

.filter() on Graph.getNode now tries to use the fast node iterator if possible
author Gilles Duboscq <duboscq@ssw.jku.at>
date Wed, 06 Jun 2012 18:55:39 +0200
parents 4a99bfc329f0
children 3bc48971a1bf
line wrap: on
line diff
--- a/graal/com.oracle.graal.graph/src/com/oracle/graal/graph/Graph.java	Tue Jun 05 17:38:48 2012 +0200
+++ b/graal/com.oracle.graal.graph/src/com/oracle/graal/graph/Graph.java	Wed Jun 06 18:55:39 2012 +0200
@@ -313,6 +313,15 @@
             public Iterator<Node> iterator() {
                 return new NodeIterator();
             }
+
+            @SuppressWarnings("unchecked")
+            @Override
+            public <F extends Node> NodeIterable<F> filter(Class<F> clazz) {
+                if (IterableNodeType.class.isAssignableFrom(clazz)) {
+                    return getNodes((Class) clazz);
+                }
+                return super.filter(clazz);
+            }
         };
     }