Implement formatMethod in JavaSignatureFormatter without PSI

This commit is contained in:
zarechenskiy
2014-04-03 15:06:50 +04:00
committed by Alexander Udalov
parent fe48051041
commit 43b41f6db9
4 changed files with 81 additions and 49 deletions
@@ -25,10 +25,8 @@ import com.intellij.openapi.util.Pair;
import com.intellij.openapi.util.io.FileUtil;
import com.intellij.psi.PsiClass;
import com.intellij.psi.PsiMethod;
import com.intellij.psi.PsiSubstitutor;
import com.intellij.psi.impl.file.impl.JavaFileManager;
import com.intellij.psi.search.GlobalSearchScope;
import com.intellij.psi.util.PsiFormatUtil;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import org.jetbrains.jet.cli.jvm.compiler.JetCoreEnvironment;
@@ -39,6 +37,8 @@ import org.jetbrains.jet.lang.descriptors.DeclarationDescriptor;
import org.jetbrains.jet.lang.descriptors.FunctionDescriptor;
import org.jetbrains.jet.lang.resolve.DescriptorUtils;
import org.jetbrains.jet.lang.resolve.java.mapping.JavaToKotlinClassMapBuilder;
import org.jetbrains.jet.lang.resolve.java.structure.JavaSignatureFormatter;
import org.jetbrains.jet.lang.resolve.java.structure.impl.JavaMethodImpl;
import org.jetbrains.jet.lang.types.lang.KotlinBuiltIns;
import org.jetbrains.jet.renderer.DescriptorRenderer;
import org.jetbrains.jet.utils.PathUtil;
@@ -50,7 +50,6 @@ import java.util.Collections;
import java.util.Comparator;
import java.util.List;
import static com.intellij.psi.util.PsiFormatUtilBase.*;
import static org.jetbrains.jet.cli.jvm.JVMConfigurationKeys.CLASSPATH_KEY;
import static org.jetbrains.jet.lang.resolve.java.kotlinSignature.JavaToKotlinMethodMap.serializeFunction;
@@ -166,7 +165,7 @@ public class GenerateJavaToKotlinMethodMap {
Collections.sort(result, new Comparator<Pair<PsiMethod, FunctionDescriptor>>() {
@Override
public int compare(Pair<PsiMethod, FunctionDescriptor> pair1, Pair<PsiMethod, FunctionDescriptor> pair2) {
public int compare(@NotNull Pair<PsiMethod, FunctionDescriptor> pair1, @NotNull Pair<PsiMethod, FunctionDescriptor> pair2) {
PsiMethod method1 = pair1.first;
PsiMethod method2 = pair2.first;
@@ -206,8 +205,7 @@ public class GenerateJavaToKotlinMethodMap {
@NotNull
private static String serializePsiMethod(@NotNull PsiMethod psiMethod) {
return PsiFormatUtil.formatMethod(psiMethod, PsiSubstitutor.EMPTY, SHOW_NAME | SHOW_PARAMETERS,
SHOW_TYPE | SHOW_FQ_CLASS_NAMES);
return JavaSignatureFormatter.getInstance().formatMethod(new JavaMethodImpl(psiMethod));
}
@Nullable