Sorting descriptors in DecompiledTextFactory is redundant

This commit is contained in:
Pavel V. Talanov
2014-11-13 19:01:55 +03:00
parent d2cfcfa659
commit e8aee5cddf
2 changed files with 4 additions and 9 deletions
@@ -101,12 +101,6 @@ private fun buildDecompiledText(packageFqName: FqName, descriptors: List<Declara
}
}
fun sortDeclarations(input: Collection<DeclarationDescriptor>): List<DeclarationDescriptor> {
val r = ArrayList(input)
Collections.sort(r, MemberComparator.INSTANCE)
return r
}
fun saveDescriptorToRange(descriptor: DeclarationDescriptor, startOffset: Int, endOffset: Int) {
renderedDescriptorsToRange[descriptorToKey(descriptor)] = TextRange(startOffset, endOffset)
}
@@ -153,7 +147,7 @@ private fun buildDecompiledText(packageFqName: FqName, descriptors: List<Declara
builder.append(subindent)
appendDescriptor(classObject, subindent)
}
for (member in sortDeclarations(descriptor.getDefaultType().getMemberScope().getDescriptors())) {
for (member in descriptor.getDefaultType().getMemberScope().getDescriptors()) {
if (member.getContainingDeclaration() != descriptor) {
continue
}
@@ -188,7 +182,7 @@ private fun buildDecompiledText(packageFqName: FqName, descriptors: List<Declara
}
appendDecompiledTextAndPackageName()
for (member in sortDeclarations(descriptors)) {
for (member in descriptors) {
appendDescriptor(member, "")
builder.append("\n")
}
@@ -33,6 +33,7 @@ import org.jetbrains.jet.lang.descriptors.ModuleDescriptor
import org.jetbrains.jet.lang.resolve.java.TopDownAnalyzerFacadeForJVM
import org.jetbrains.jet.lang.resolve.BindingTraceContext
import org.jetbrains.jet.lang.resolve.name.ClassId
import org.jetbrains.jet.lang.resolve.MemberComparator
public class DecompiledTextConsistencyTest : JetLightCodeInsightFixtureTestCase() {
@@ -76,6 +77,6 @@ class ProjectBasedResolverForDecompiler(project: Project) : ResolverForDecompile
val packageView = module.getPackage(packageFqName) ?: return listOf()
return packageView.getMemberScope().getAllDescriptors() filter {
it is CallableMemberDescriptor && DescriptorUtils.getContainingModule(it) != KotlinBuiltIns.getInstance().getBuiltInsModule()
}
} sortBy MemberComparator.INSTANCE
}
}