diff options
Diffstat (limited to 'platform/structuralsearch/source/com/intellij/structuralsearch/impl/matcher/predicates/NotPredicate.java')
-rw-r--r-- | platform/structuralsearch/source/com/intellij/structuralsearch/impl/matcher/predicates/NotPredicate.java | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/platform/structuralsearch/source/com/intellij/structuralsearch/impl/matcher/predicates/NotPredicate.java b/platform/structuralsearch/source/com/intellij/structuralsearch/impl/matcher/predicates/NotPredicate.java new file mode 100644 index 000000000000..3d28a635e3af --- /dev/null +++ b/platform/structuralsearch/source/com/intellij/structuralsearch/impl/matcher/predicates/NotPredicate.java @@ -0,0 +1,24 @@ +package com.intellij.structuralsearch.impl.matcher.predicates; + +import com.intellij.psi.PsiElement; +import com.intellij.structuralsearch.impl.matcher.MatchContext; +import com.intellij.structuralsearch.impl.matcher.handlers.MatchPredicate; + +/** + * Negates predicate + */ +public final class NotPredicate extends MatchPredicate { + private final MatchPredicate handler; + + public NotPredicate(final MatchPredicate _handler) { + handler = _handler; + } + + public boolean match(PsiElement patternNode, PsiElement matchedNode, MatchContext context) { + return !handler.match(patternNode,matchedNode,context); + } + + public MatchPredicate getHandler() { + return handler; + } +} |