summaryrefslogtreecommitdiff
path: root/java/java-impl/src/com/intellij/compilerOutputIndex/impl/MethodIncompleteSignature.java
diff options
context:
space:
mode:
Diffstat (limited to 'java/java-impl/src/com/intellij/compilerOutputIndex/impl/MethodIncompleteSignature.java')
-rw-r--r--java/java-impl/src/com/intellij/compilerOutputIndex/impl/MethodIncompleteSignature.java17
1 files changed, 17 insertions, 0 deletions
diff --git a/java/java-impl/src/com/intellij/compilerOutputIndex/impl/MethodIncompleteSignature.java b/java/java-impl/src/com/intellij/compilerOutputIndex/impl/MethodIncompleteSignature.java
index ad85322f3f6a..c0904bc3e36e 100644
--- a/java/java-impl/src/com/intellij/compilerOutputIndex/impl/MethodIncompleteSignature.java
+++ b/java/java-impl/src/com/intellij/compilerOutputIndex/impl/MethodIncompleteSignature.java
@@ -1,5 +1,6 @@
package com.intellij.compilerOutputIndex.impl;
+import com.intellij.compilerOutputIndex.api.fs.AsmUtil;
import com.intellij.openapi.util.Condition;
import com.intellij.psi.*;
import com.intellij.psi.search.GlobalSearchScope;
@@ -12,6 +13,7 @@ import java.io.DataInput;
import java.io.DataOutput;
import java.io.IOException;
import java.util.ArrayList;
+import java.util.Collections;
import java.util.Comparator;
import java.util.List;
@@ -44,6 +46,13 @@ public class MethodIncompleteSignature {
return new MethodIncompleteSignature(className, className, CONSTRUCTOR_METHOD_NAME, true);
}
+ public MethodIncompleteSignature toExternalRepresentation() {
+ return new MethodIncompleteSignature(AsmUtil.getQualifiedClassName(getOwner()),
+ AsmUtil.getQualifiedClassName(getReturnType()),
+ getName(),
+ isStatic());
+ }
+
@NotNull
public String getOwner() {
return myOwner;
@@ -87,6 +96,14 @@ public class MethodIncompleteSignature {
}
}
}
+ if (filtered.size() > 1) {
+ Collections.sort(filtered, new Comparator<PsiMethod>() {
+ @Override
+ public int compare(final PsiMethod o1, final PsiMethod o2) {
+ return o1.getParameterList().getParametersCount() - o2.getParameterList().getParametersCount();
+ }
+ });
+ }
return filtered.toArray(new PsiMethod[filtered.size()]);
}