diff --git a/platform/structuralsearch/source/com/intellij/structuralsearch/impl/matcher/predicates/ReferencePredicate.java b/platform/structuralsearch/source/com/intellij/structuralsearch/impl/matcher/predicates/ReferencePredicate.java index 17570ed8f5df..c9b30bab9f8b 100644 --- a/platform/structuralsearch/source/com/intellij/structuralsearch/impl/matcher/predicates/ReferencePredicate.java +++ b/platform/structuralsearch/source/com/intellij/structuralsearch/impl/matcher/predicates/ReferencePredicate.java @@ -15,10 +15,7 @@ public final class ReferencePredicate extends SubstitutionHandler { } public boolean match(PsiElement node, PsiElement match, MatchContext context) { - if (StructuralSearchUtil.isIdentifier(match)) { - // since we pickup tokens - match = match.getParent(); - } + match = StructuralSearchUtil.getParentIfIdentifier(match); PsiElement result = MatchUtils.getReferencedElement(match); if (result == null) { diff --git a/platform/structuralsearch/source/com/intellij/structuralsearch/impl/matcher/predicates/RegExpPredicate.java b/platform/structuralsearch/source/com/intellij/structuralsearch/impl/matcher/predicates/RegExpPredicate.java index f7b8ecedcf3d..e670d7e67a75 100644 --- a/platform/structuralsearch/source/com/intellij/structuralsearch/impl/matcher/predicates/RegExpPredicate.java +++ b/platform/structuralsearch/source/com/intellij/structuralsearch/impl/matcher/predicates/RegExpPredicate.java @@ -102,9 +102,7 @@ public final class RegExpPredicate extends MatchPredicate { if (!result) { - if(StructuralSearchUtil.isIdentifier(matchedNode)) { - matchedNode = matchedNode.getParent(); - } + matchedNode = StructuralSearchUtil.getParentIfIdentifier(matchedNode); String alternativeText = context.getPattern().getAlternativeTextToMatch(matchedNode, text); if (alternativeText != null) { diff --git a/platform/structuralsearch/source/com/intellij/structuralsearch/plugin/replace/impl/ReplacementContext.java b/platform/structuralsearch/source/com/intellij/structuralsearch/plugin/replace/impl/ReplacementContext.java index c77d0b7ce1f1..07566796cf06 100644 --- a/platform/structuralsearch/source/com/intellij/structuralsearch/plugin/replace/impl/ReplacementContext.java +++ b/platform/structuralsearch/source/com/intellij/structuralsearch/plugin/replace/impl/ReplacementContext.java @@ -43,7 +43,7 @@ public class ReplacementContext { for (String s : variableMap.keySet()) { final MatchResult matchResult = replacementInfo.getVariableMap().get(s); PsiElement match = matchResult.getMatchRef() != null ? matchResult.getMatch() : null; - if (StructuralSearchUtil.isIdentifier(match)) match = match.getParent(); + match = StructuralSearchUtil.getParentIfIdentifier(match); if (match instanceof PsiNamedElement) { final String name = ((PsiNamedElement)match).getName();