mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-26 13:35:16 +07:00
IDEA-128435 (SSR searches case sensitively when not instructed to do so)
This commit is contained in:
+18
-20
@@ -87,7 +87,7 @@ public class JavaMatchingVisitor extends JavaElementVisitor {
|
||||
myMatchingVisitor.setResult(((MatchingHandler)userData).match(comment, comment2, myMatchingVisitor.getMatchContext()));
|
||||
}
|
||||
else {
|
||||
myMatchingVisitor.setResult(comment.getText().equals(comment2.getText()));
|
||||
myMatchingVisitor.setResult(myMatchingVisitor.matchText(comment, comment2));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -255,7 +255,7 @@ public class JavaMatchingVisitor extends JavaElementVisitor {
|
||||
|
||||
@Override
|
||||
public void visitElement(PsiElement el) {
|
||||
myMatchingVisitor.setResult(el.textMatches(myMatchingVisitor.getElement()));
|
||||
myMatchingVisitor.setResult(myMatchingVisitor.matchText(el, myMatchingVisitor.getElement()));
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -286,11 +286,11 @@ public class JavaMatchingVisitor extends JavaElementVisitor {
|
||||
boolean result;
|
||||
|
||||
if (!(element instanceof PsiJavaToken)) {
|
||||
result = token.textMatches(element);
|
||||
result = myMatchingVisitor.matchText(token, element);
|
||||
} else {
|
||||
final PsiJavaToken anotherToken = (PsiJavaToken)element;
|
||||
|
||||
result = token.getTokenType() == anotherToken.getTokenType() && token.textMatches(anotherToken);
|
||||
result = token.getTokenType() == anotherToken.getTokenType() && myMatchingVisitor.matchText(token, anotherToken);
|
||||
}
|
||||
|
||||
myMatchingVisitor.setResult(result);
|
||||
@@ -645,7 +645,7 @@ public class JavaMatchingVisitor extends JavaElementVisitor {
|
||||
// just variable
|
||||
final PsiExpression reference2Qualifier = reference2.getQualifierExpression();
|
||||
if (qualifier == null && reference2Qualifier == null) {
|
||||
myMatchingVisitor.setResult(reference.getReferenceNameElement().textMatches(reference2.getReferenceNameElement()));
|
||||
myMatchingVisitor.setResult(myMatchingVisitor.matchText(reference.getReferenceNameElement(), reference2.getReferenceNameElement()));
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -658,9 +658,7 @@ public class JavaMatchingVisitor extends JavaElementVisitor {
|
||||
myMatchingVisitor.setResult(myMatchingVisitor.handleTypedElement(referenceElement, referenceElement2));
|
||||
}
|
||||
else {
|
||||
myMatchingVisitor.setResult(
|
||||
(referenceElement2 != null && referenceElement != null && referenceElement.textMatches(referenceElement2)) ||
|
||||
referenceElement == referenceElement2);
|
||||
myMatchingVisitor.setResult(myMatchingVisitor.matchText(referenceElement, referenceElement2));
|
||||
}
|
||||
|
||||
if (!myMatchingVisitor.getResult()) {
|
||||
@@ -842,7 +840,8 @@ public class JavaMatchingVisitor extends JavaElementVisitor {
|
||||
}
|
||||
final String text = getText(el);
|
||||
final String text2 = getText(el2);
|
||||
final boolean equalsIgnorePackage = MatchUtils.compareWithNoDifferenceToPackage(text, text2);
|
||||
final boolean caseSensitive = myMatchingVisitor.getMatchContext().getOptions().isCaseSensitiveMatch();
|
||||
final boolean equalsIgnorePackage = MatchUtils.compareWithNoDifferenceToPackage(text, text2, !caseSensitive);
|
||||
if (equalsIgnorePackage || !(el2 instanceof PsiJavaReference)) {
|
||||
return equalsIgnorePackage;
|
||||
}
|
||||
@@ -850,10 +849,11 @@ public class JavaMatchingVisitor extends JavaElementVisitor {
|
||||
final PsiElement element2 = ((PsiJavaReference)el2).resolve();
|
||||
|
||||
if (element2 instanceof PsiClass) {
|
||||
return text.equals(((PsiClass)element2).getQualifiedName());
|
||||
final String name = ((PsiClass)element2).getQualifiedName();
|
||||
return caseSensitive ? text.equals(name) : text.equalsIgnoreCase(name);
|
||||
}
|
||||
else {
|
||||
return MatchUtils.compareWithNoDifferenceToPackage(text, text2);
|
||||
return MatchUtils.compareWithNoDifferenceToPackage(text, text2, !caseSensitive);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -975,7 +975,7 @@ public class JavaMatchingVisitor extends JavaElementVisitor {
|
||||
final PsiVariable var2 = (PsiVariable)myMatchingVisitor.getElement();
|
||||
|
||||
try {
|
||||
myMatchingVisitor.setResult((var.getName().equals(var2.getName()) || isTypedVar) &&
|
||||
myMatchingVisitor.setResult((myMatchingVisitor.matchText(var.getNameIdentifier(), var2.getNameIdentifier()) || isTypedVar) &&
|
||||
((var.getParent() instanceof PsiClass && ((PsiClass)var.getParent()).isInterface()) ||
|
||||
myMatchingVisitor.match(var.getModifierList(), var2.getModifierList())));
|
||||
if (myMatchingVisitor.getResult()) {
|
||||
@@ -1093,11 +1093,9 @@ public class JavaMatchingVisitor extends JavaElementVisitor {
|
||||
final PsiReferenceExpression mcallRef1 = mcall.getMethodExpression();
|
||||
final PsiReferenceExpression mcallRef2 = mcall2.getMethodExpression();
|
||||
|
||||
final String mcallname1 = mcallRef1.getReferenceName();
|
||||
final String mcallname2 = mcallRef2.getReferenceName();
|
||||
final boolean isTypedVar = myMatchingVisitor.getMatchContext().getPattern().isTypedVar(mcallRef1.getReferenceNameElement());
|
||||
|
||||
if (mcallname1 != null && !mcallname1.equals(mcallname2) && !isTypedVar) {
|
||||
if (!myMatchingVisitor.matchText(mcallRef1.getReferenceNameElement(), mcallRef2.getReferenceNameElement()) && !isTypedVar) {
|
||||
myMatchingVisitor.setResult(false);
|
||||
return;
|
||||
}
|
||||
@@ -1177,7 +1175,7 @@ public class JavaMatchingVisitor extends JavaElementVisitor {
|
||||
myMatchingVisitor.setResult(handler.match(const1, const2, myMatchingVisitor.getMatchContext()));
|
||||
}
|
||||
else {
|
||||
myMatchingVisitor.setResult(const1.textMatches(const2));
|
||||
myMatchingVisitor.setResult(myMatchingVisitor.matchText(const1, const2));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1535,7 +1533,7 @@ public class JavaMatchingVisitor extends JavaElementVisitor {
|
||||
|
||||
@Override
|
||||
public void visitKeyword(PsiKeyword keyword) {
|
||||
myMatchingVisitor.setResult(keyword.textMatches(myMatchingVisitor.getElement()));
|
||||
myMatchingVisitor.setResult(myMatchingVisitor.matchText(keyword, myMatchingVisitor.getElement()));
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -1600,7 +1598,7 @@ public class JavaMatchingVisitor extends JavaElementVisitor {
|
||||
myMatchingVisitor.setResult(((SubstitutionHandler)handler).handle(identifier2, myMatchingVisitor.getMatchContext()));
|
||||
}
|
||||
else {
|
||||
myMatchingVisitor.setResult(identifier.textMatches(identifier2));
|
||||
myMatchingVisitor.setResult(myMatchingVisitor.matchText(identifier, identifier2));
|
||||
}
|
||||
|
||||
if (myMatchingVisitor.getResult()) {
|
||||
@@ -1641,7 +1639,7 @@ public class JavaMatchingVisitor extends JavaElementVisitor {
|
||||
}
|
||||
}
|
||||
|
||||
myMatchingVisitor.setResult((clazz.getName().equals(clazz2.getName()) || isTypedVar) &&
|
||||
myMatchingVisitor.setResult((myMatchingVisitor.matchText(clazz.getNameIdentifier(), clazz2.getNameIdentifier()) || isTypedVar) &&
|
||||
compareClasses(clazz, clazz2));
|
||||
|
||||
if (myMatchingVisitor.getResult() && isTypedVar) {
|
||||
@@ -1680,7 +1678,7 @@ public class JavaMatchingVisitor extends JavaElementVisitor {
|
||||
return;
|
||||
}
|
||||
|
||||
myMatchingVisitor.setResult((method.getName().equals(method2.getName()) || isTypedVar) &&
|
||||
myMatchingVisitor.setResult((myMatchingVisitor.matchText(method.getNameIdentifier(), method2.getNameIdentifier()) || isTypedVar) &&
|
||||
myMatchingVisitor.match(method.getModifierList(), method2.getModifierList()) &&
|
||||
myMatchingVisitor.matchSons(method.getParameterList(), method2.getParameterList()) &&
|
||||
myMatchingVisitor.match(method.getReturnTypeElement(), method2.getReturnTypeElement()) &&
|
||||
|
||||
+2
-1
@@ -383,7 +383,8 @@ public class JavaCompilingVisitor extends JavaRecursiveElementWalkingVisitor {
|
||||
boolean classQualifier) {
|
||||
final SubstitutionHandler substitutionHandler =
|
||||
new SubstitutionHandler("__" + referenceText.replace('.', '_'), false, classQualifier ? 0 : 1, 1, false);
|
||||
substitutionHandler.setPredicate(new RegExpPredicate(referenceText.replaceAll("\\.", "\\\\."), true, null, false, false));
|
||||
final boolean caseSensitive = myCompilingVisitor.getContext().getOptions().isCaseSensitiveMatch();
|
||||
substitutionHandler.setPredicate(new RegExpPredicate(referenceText.replaceAll("\\.", "\\\\."), caseSensitive, null, false, false));
|
||||
myCompilingVisitor.getContext().getPattern().setHandler(expr, substitutionHandler);
|
||||
return substitutionHandler;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user