# HG changeset patch # User Gilles Duboscq # Date 1397232081 -7200 # Node ID 140bd4b4e3c6efc34061edca06602843034e0651 # Parent 0672512feb81b90d0b145fdff30e709a5e061a66 Make NodePredicate an interface diff -r 0672512feb81 -r 140bd4b4e3c6 graal/com.oracle.graal.graph/src/com/oracle/graal/graph/iterators/NodePredicate.java --- a/graal/com.oracle.graal.graph/src/com/oracle/graal/graph/iterators/NodePredicate.java Fri Apr 11 17:16:24 2014 +0200 +++ b/graal/com.oracle.graal.graph/src/com/oracle/graal/graph/iterators/NodePredicate.java Fri Apr 11 18:01:21 2014 +0200 @@ -24,19 +24,19 @@ import com.oracle.graal.graph.*; -public abstract class NodePredicate { +public interface NodePredicate { - public abstract boolean apply(Node n); + boolean apply(Node n); - public NodePredicate and(NodePredicate np) { + default NodePredicate and(NodePredicate np) { return NodePredicates.and(this, np); } - public NodePredicate or(NodePredicate np) { + default NodePredicate or(NodePredicate np) { return NodePredicates.or(this, np); } - public NodePredicate negate() { + default NodePredicate negate() { return NodePredicates.not(this); } } diff -r 0672512feb81 -r 140bd4b4e3c6 graal/com.oracle.graal.graph/src/com/oracle/graal/graph/iterators/NodePredicates.java --- a/graal/com.oracle.graal.graph/src/com/oracle/graal/graph/iterators/NodePredicates.java Fri Apr 11 17:16:24 2014 +0200 +++ b/graal/com.oracle.graal.graph/src/com/oracle/graal/graph/iterators/NodePredicates.java Fri Apr 11 18:01:21 2014 +0200 @@ -126,7 +126,7 @@ return new NegativeTypePredicate(iface); } - private static final class TautologyPredicate extends NodePredicate { + private static final class TautologyPredicate implements NodePredicate { @Override public boolean apply(Node n) { @@ -134,7 +134,7 @@ } } - private static final class FalsePredicate extends NodePredicate { + private static final class FalsePredicate implements NodePredicate { @Override public boolean apply(Node n) { @@ -142,7 +142,7 @@ } } - private static final class AndPredicate extends NodePredicate { + private static final class AndPredicate implements NodePredicate { private final NodePredicate a; private final NodePredicate b; @@ -158,7 +158,7 @@ } } - private static final class NotPredicate extends NodePredicate { + private static final class NotPredicate implements NodePredicate { private final NodePredicate a; @@ -172,7 +172,7 @@ } } - private static final class OrPredicate extends NodePredicate { + private static final class OrPredicate implements NodePredicate { private final NodePredicate a; private final NodePredicate b; @@ -188,7 +188,7 @@ } } - private static final class IsNullPredicate extends NodePredicate { + private static final class IsNullPredicate implements NodePredicate { @Override public boolean apply(Node n) { @@ -196,7 +196,7 @@ } } - private static final class IsNotNullPredicate extends NodePredicate { + private static final class IsNotNullPredicate implements NodePredicate { @Override public boolean apply(Node n) { @@ -204,7 +204,7 @@ } } - private static final class EqualsPredicate extends NodePredicate { + private static final class EqualsPredicate implements NodePredicate { private final Node u; @@ -218,7 +218,7 @@ } } - private static final class NotEqualsPredicate extends NodePredicate { + private static final class NotEqualsPredicate implements NodePredicate { private final Node u; @@ -232,7 +232,7 @@ } } - public static final class PositiveTypePredicate extends NodePredicate { + public static final class PositiveTypePredicate implements NodePredicate { private final Class type; private PositiveTypePredicate or; @@ -263,7 +263,7 @@ } } - public static final class NegativeTypePredicate extends NodePredicate { + public static final class NegativeTypePredicate implements NodePredicate { private final Class type; private NegativeTypePredicate nor; diff -r 0672512feb81 -r 140bd4b4e3c6 graal/com.oracle.graal.loop/src/com/oracle/graal/loop/LoopEx.java --- a/graal/com.oracle.graal.loop/src/com/oracle/graal/loop/LoopEx.java Fri Apr 11 17:16:24 2014 +0200 +++ b/graal/com.oracle.graal.loop/src/com/oracle/graal/loop/LoopEx.java Fri Apr 11 18:01:21 2014 +0200 @@ -123,7 +123,7 @@ return (isCounted() ? "CountedLoop [" + counted() + "] " : "Loop ") + "(depth=" + lirLoop().depth + ") " + loopBegin(); } - private class InvariantPredicate extends NodePredicate { + private class InvariantPredicate implements NodePredicate { @Override public boolean apply(Node n) {