mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
[java-psi] clean up: do not call getParameterList() twice; avoid parameter array creation
GitOrigin-RevId: bd92083bb37a78a9f9eaa57e510440cfae9e158d
This commit is contained in:
committed by
intellij-monorepo-bot
parent
d0371e53cf
commit
da68b424b9
+6
-4
@@ -696,9 +696,10 @@ public class JavaMethodsConflictResolver implements PsiConflictResolver {
|
||||
for (CandidateInfo conflict : conflicts) {
|
||||
ProgressManager.checkCanceled();
|
||||
final PsiMethod method = (PsiMethod)conflict.getElement();
|
||||
final int parametersCount = method.getParameterList().getParametersCount();
|
||||
PsiParameterList list = method.getParameterList();
|
||||
final int parametersCount = list.getParametersCount();
|
||||
if (method.isVarArgs() && parametersCount - 1 == argumentsCount) {
|
||||
final PsiType type = method.getParameterList().getParameters()[parametersCount - 1].getType();
|
||||
final PsiType type = Objects.requireNonNull(list.getParameter(parametersCount - 1)).getType();
|
||||
final PsiType componentType = ((PsiArrayType)type).getComponentType();
|
||||
final PsiClassType classType = PsiType.getJavaLangObject(method.getManager(), GlobalSearchScope.allScope(method.getProject()));
|
||||
if (Comparing.equal(componentType, classType)) {
|
||||
@@ -712,8 +713,9 @@ public class JavaMethodsConflictResolver implements PsiConflictResolver {
|
||||
ProgressManager.checkCanceled();
|
||||
PsiMethod method = (PsiMethod)conflict.getElement();
|
||||
if (method != objectVararg.getElement() && method.isVarArgs()) {
|
||||
final int paramsCount = method.getParameterList().getParametersCount();
|
||||
final PsiType type = method.getParameterList().getParameters()[paramsCount - 1].getType();
|
||||
PsiParameterList list = method.getParameterList();
|
||||
final int paramsCount = list.getParametersCount();
|
||||
final PsiType type = Objects.requireNonNull(list.getParameter(paramsCount - 1)).getType();
|
||||
final PsiType componentType = ((PsiArrayType)type).getComponentType();
|
||||
if (argumentsCount == paramsCount - 1 && componentType instanceof PsiPrimitiveType) {
|
||||
conflicts.remove(objectVararg);
|
||||
|
||||
Reference in New Issue
Block a user