Replace sort with sorted.
This commit is contained in:
@@ -45,8 +45,8 @@ public object CodegenUtilKt {
|
||||
return descriptor.getDefaultType().getMemberScope().getDescriptors().asSequence()
|
||||
.filterIsInstance<CallableMemberDescriptor>()
|
||||
.filter { it.getKind() == CallableMemberDescriptor.Kind.DELEGATION }
|
||||
.toList()
|
||||
.sortBy(MemberComparator.INSTANCE as Comparator<CallableMemberDescriptor>) // Workaround for KT-6030
|
||||
.asIterable()
|
||||
.sortedWith(MemberComparator.INSTANCE)
|
||||
.keysToMapExceptNulls {
|
||||
delegatingMember ->
|
||||
|
||||
|
||||
@@ -243,7 +243,7 @@ class SMAP(val fileMappings: List<FileMapping>) {
|
||||
val default: FileMapping
|
||||
get() = fileMappings.first()
|
||||
|
||||
val intervals = fileMappings.flatMap { it.lineMappings }.sortBy(RangeMapping.Comparator)
|
||||
val intervals = fileMappings.flatMap { it.lineMappings }.sortedWith(RangeMapping.Comparator)
|
||||
|
||||
val sourceInfo: SourceInfo
|
||||
init {
|
||||
|
||||
@@ -131,7 +131,7 @@ public class KotlinCoreEnvironment private constructor(
|
||||
message ->
|
||||
report(ERROR, message)
|
||||
}))
|
||||
sourceFiles.sortBy(object : Comparator<JetFile> {
|
||||
sourceFiles.sortedWith(object : Comparator<JetFile> {
|
||||
override fun compare(o1: JetFile, o2: JetFile): Int {
|
||||
return o1.getVirtualFile().getPath().compareTo(o2.getVirtualFile().getPath(), ignoreCase = true)
|
||||
}
|
||||
|
||||
@@ -91,7 +91,7 @@ public fun getExpectedTypePredicate(
|
||||
|
||||
val candidates = callee.getReferenceTargets(bindingContext)
|
||||
.filterIsInstance<FunctionDescriptor>()
|
||||
.sortBy { DescriptorRenderer.DEBUG_TEXT.render(it) }
|
||||
.sortedBy { DescriptorRenderer.DEBUG_TEXT.render(it) }
|
||||
if (candidates.isEmpty()) return null
|
||||
|
||||
val explicitReceiver = call.getExplicitReceiver()
|
||||
|
||||
@@ -106,9 +106,9 @@ public object Renderers {
|
||||
|
||||
public val AMBIGUOUS_CALLS: Renderer<Collection<ResolvedCall<*>>> = Renderer {
|
||||
calls: Collection<ResolvedCall<*>> ->
|
||||
calls
|
||||
calls
|
||||
.map { it.getResultingDescriptor() }
|
||||
.sortBy(MemberComparator.INSTANCE)
|
||||
.sortedWith(MemberComparator.INSTANCE)
|
||||
.joinToString(separator = "\n", prefix = "\n") { DescriptorRenderer.FQ_NAMES_IN_TYPES.render(it) }
|
||||
}
|
||||
|
||||
|
||||
@@ -142,7 +142,7 @@ public fun <TElement : JetElement> createByPattern(pattern: String, vararg args:
|
||||
.flatMap { it.value }
|
||||
.map { it.range }
|
||||
.filterNot { it.isEmpty() }
|
||||
.sortBy { -it.getStartOffset() }
|
||||
.sortedBy { -it.getStartOffset() }
|
||||
|
||||
// reformat whole text except for String arguments (as they can contain user's formatting to be preserved)
|
||||
if (stringPlaceholderRanges.none()) {
|
||||
|
||||
@@ -40,7 +40,7 @@ public open class KotlinStubBaseImpl<T : JetElementImplStub<*>>(parent: StubElem
|
||||
}
|
||||
|
||||
private fun renderPropertyValues(stubInterface: Class<out Any?>): List<String> {
|
||||
return collectProperties(stubInterface).map { property -> renderProperty(property) }.filterNotNull().sort()
|
||||
return collectProperties(stubInterface).map { property -> renderProperty(property) }.filterNotNull().sorted()
|
||||
}
|
||||
|
||||
private fun collectProperties(stubInterface: Class<*>): Collection<Method> {
|
||||
|
||||
@@ -69,7 +69,7 @@ public abstract class AbstractPseudoValueTest : AbstractPseudocodeTest() {
|
||||
.map { (it as? InstructionWithValue)?.outputValue }
|
||||
.filterNotNull()
|
||||
.filter { it.element == null }
|
||||
.toSortedListBy { it.debugName }
|
||||
.sortedBy { it.debugName }
|
||||
val allValues = elementToValues.values() + unboundValues
|
||||
if (allValues.isEmpty()) return
|
||||
|
||||
|
||||
@@ -68,7 +68,7 @@ class LazyOperationsLog(
|
||||
return groupedByOwner.map {
|
||||
val (owner, records) = it
|
||||
renderOwner(owner, records)
|
||||
}.sortBy(stringSanitizer).join("\n").renumberObjects()
|
||||
}.sortedBy(stringSanitizer).join("\n").renumberObjects()
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -97,7 +97,7 @@ class LazyOperationsLog(
|
||||
with (Printer(sb)) {
|
||||
println(render(owner), " {")
|
||||
indent {
|
||||
records.map { renderRecord(it) }.sortBy(stringSanitizer).forEach {
|
||||
records.map { renderRecord(it) }.sortedBy(stringSanitizer).forEach {
|
||||
println(it)
|
||||
}
|
||||
}
|
||||
|
||||
+1
-1
@@ -58,6 +58,6 @@ private fun checkSorted(descriptors: Collection<DeclarationDescriptor>, declarat
|
||||
UsefulTestCase.assertOrderedEquals(
|
||||
"Members of $declaration should be sorted by serialization.",
|
||||
descriptors,
|
||||
descriptors.sortBy(MemberComparator.INSTANCE)
|
||||
descriptors.sortedWith(MemberComparator.INSTANCE)
|
||||
)
|
||||
}
|
||||
|
||||
@@ -383,15 +383,15 @@ internal class DescriptorRendererImpl(
|
||||
} ?: emptyList()
|
||||
val defaultList = parameterDescriptorsWithDefaultValue.filter { !allValueArguments.containsKey(it) }.map {
|
||||
"${it.getName().asString()} = ..."
|
||||
}.sort()
|
||||
}.sorted()
|
||||
val argumentList = allValueArguments.entrySet()
|
||||
.map { entry ->
|
||||
val name = entry.key.getName().asString()
|
||||
val value = if (!parameterDescriptorsWithDefaultValue.contains(entry.key)) renderConstant(entry.value) else "..."
|
||||
"$name = $value"
|
||||
}
|
||||
.sort()
|
||||
return (defaultList + argumentList).sort()
|
||||
.sorted()
|
||||
return (defaultList + argumentList).sorted()
|
||||
}
|
||||
|
||||
private fun renderConstant(value: ConstantValue<*>): String {
|
||||
|
||||
@@ -32,7 +32,7 @@ public object IdeRenderers {
|
||||
calls: Collection<ResolvedCall<*>> ->
|
||||
calls
|
||||
.map { it.getResultingDescriptor() }
|
||||
.sortBy(MemberComparator.INSTANCE)
|
||||
.sortedWith(MemberComparator.INSTANCE)
|
||||
.joinToString("") { "<li>" + DescriptorRenderer.HTML.render(it) + "</li>" }
|
||||
}
|
||||
|
||||
@@ -45,7 +45,7 @@ public object IdeRenderers {
|
||||
// TODO: compareBy(comparator, selector) in stdlib
|
||||
val comparator = comparator<ResolvedCall<*>> { c1, c2 -> MemberComparator.INSTANCE.compare(c1.getResultingDescriptor(), c2.getResultingDescriptor()) }
|
||||
calls
|
||||
.sortBy(comparator)
|
||||
.sortedWith(comparator)
|
||||
.joinToString("") { "<li>" + renderResolvedCall(it) + "</li>" }
|
||||
}
|
||||
|
||||
@@ -80,7 +80,7 @@ public object IdeRenderers {
|
||||
val conflicts = data.signatureOrigins
|
||||
.map { it.descriptor }
|
||||
.filterNotNull()
|
||||
.sortBy(MemberComparator.INSTANCE)
|
||||
.sortedWith(MemberComparator.INSTANCE)
|
||||
.joinToString("") { "<li>" + HTML_COMPACT_WITH_MODIFIERS.render(it) + "</li>\n" }
|
||||
|
||||
"The following declarations have the same JVM signature (<code>${data.signature.name}${data.signature.desc}</code>):<br/>\n<ul>\n$conflicts</ul>"
|
||||
|
||||
+1
-1
@@ -273,7 +273,7 @@ public object ExpectedCompletionUtils {
|
||||
val map = HashMap<String, String?>()
|
||||
map.put(CompletionProposal.LOOKUP_STRING, item.lookupString)
|
||||
|
||||
map.put(CompletionProposal.ALL_LOOKUP_STRINGS, item.allLookupStrings.sort().joinToString())
|
||||
map.put(CompletionProposal.ALL_LOOKUP_STRINGS, item.allLookupStrings.sorted().joinToString())
|
||||
|
||||
if (presentation.itemText != null) {
|
||||
map.put(CompletionProposal.PRESENTATION_ITEM_TEXT, presentation.itemText)
|
||||
|
||||
+4
-4
@@ -30,12 +30,12 @@ public object DirectiveBasedActionUtils {
|
||||
return
|
||||
}
|
||||
|
||||
val expectedErrors = InTextDirectivesUtils.findLinesWithPrefixesRemoved(file.getText(), "// ERROR:").sort()
|
||||
val expectedErrors = InTextDirectivesUtils.findLinesWithPrefixesRemoved(file.getText(), "// ERROR:").sorted()
|
||||
|
||||
val actualErrors = file.analyzeFully().getDiagnostics()
|
||||
.filter { it.getSeverity() == Severity.ERROR }
|
||||
.map { IdeErrorMessages.render(it) }
|
||||
.sort()
|
||||
.sorted()
|
||||
|
||||
UsefulTestCase.assertOrderedEquals("All actual errors should be mentioned in test data with // ERROR: directive. But no unnecessary errors should be me mentioned",
|
||||
actualErrors,
|
||||
@@ -43,12 +43,12 @@ public object DirectiveBasedActionUtils {
|
||||
}
|
||||
|
||||
public fun checkAvailableActionsAreExpected(file: JetFile, availableActions: Collection<IntentionAction>) {
|
||||
val expectedActions = InTextDirectivesUtils.findLinesWithPrefixesRemoved(file.getText(), "// ACTION:").sort()
|
||||
val expectedActions = InTextDirectivesUtils.findLinesWithPrefixesRemoved(file.getText(), "// ACTION:").sorted()
|
||||
|
||||
UsefulTestCase.assertEmpty("Irrelevant actions should not be specified in ACTION directive for they are not checked anyway",
|
||||
expectedActions.filter { isIrrelevantAction(it) })
|
||||
|
||||
val actualActions = availableActions.map { it.getText() }.sort()
|
||||
val actualActions = availableActions.map { it.getText() }.sorted()
|
||||
|
||||
UsefulTestCase.assertOrderedEquals("Some unexpected actions available at current position. Use // ACTION: directive",
|
||||
filterOutIrrelevantActions(actualActions),
|
||||
|
||||
@@ -72,7 +72,7 @@ public class KotlinAddImportAction(
|
||||
val descriptorToImport: DeclarationDescriptor
|
||||
get() {
|
||||
return descriptors.singleOrNull()
|
||||
?: descriptors.sortBy { if (it is ClassDescriptor) 0 else 1 }.first()
|
||||
?: descriptors.sortedBy { if (it is ClassDescriptor) 0 else 1 }.first()
|
||||
}
|
||||
|
||||
val declarationToImport = DescriptorToSourceUtilsIde.getAnyDeclaration(project, descriptorToImport)
|
||||
@@ -81,7 +81,7 @@ public class KotlinAddImportAction(
|
||||
private val variants = candidates
|
||||
.groupBy { it.importableFqName!! }
|
||||
.map { Variant(it.key, it.value) }
|
||||
.sortBy { it.priority }
|
||||
.sortedBy { it.priority }
|
||||
|
||||
public val highestPriorityFqName: FqName
|
||||
get() = variants.first().fqName
|
||||
|
||||
@@ -55,7 +55,7 @@ data class DataForConversion private constructor(
|
||||
}
|
||||
|
||||
private fun clipTextIfNeeded(file: PsiJavaFile, fileText: String, startOffsets: IntArray, endOffsets: IntArray): String? {
|
||||
val ranges = startOffsets.indices.map { TextRange(startOffsets[it], endOffsets[it]) }.sortBy { it.start }
|
||||
val ranges = startOffsets.indices.map { TextRange(startOffsets[it], endOffsets[it]) }.sortedBy { it.start }
|
||||
|
||||
fun canDropRange(range: TextRange) = ranges.all { range !in it }
|
||||
|
||||
|
||||
@@ -189,8 +189,8 @@ class KotlinEvaluator(val codeFragment: JetCodeFragment,
|
||||
val classFileFactory = createClassFileFactory(codeFragment, extractedFunction, context, parametersDescriptor)
|
||||
|
||||
val outputFiles = classFileFactory.asList().filterClassFiles()
|
||||
.filter { it.relativePath != "$packageInternalName.class" }
|
||||
.sortBy { it.relativePath.length() }
|
||||
.filter { it.relativePath != "$packageInternalName.class" }
|
||||
.sortedBy { it.relativePath.length() }
|
||||
|
||||
val funName = runReadAction { extractedFunction.name }
|
||||
if (funName == null) {
|
||||
|
||||
+1
-1
@@ -90,7 +90,7 @@ public class KotlinClassWithDelegatedPropertyRenderer : ClassRenderer() {
|
||||
}
|
||||
|
||||
if (XDebuggerSettingsManager.getInstance()!!.getDataViewSettings().isSortValues()) {
|
||||
children.sortBy(NodeManagerImpl.getNodeComparator())
|
||||
children.sortedWith(NodeManagerImpl.getNodeComparator())
|
||||
}
|
||||
|
||||
builder.setChildren(children)
|
||||
|
||||
@@ -80,7 +80,7 @@ public fun getOverriddenMethodTooltip(method: PsiMethod): String? {
|
||||
|
||||
val comparator = MethodCellRenderer(false).getComparator()
|
||||
|
||||
val overridingJavaMethods = processor.getCollection().filter { it !is KotlinLightMethodForTraitFakeOverride } sortBy(comparator)
|
||||
val overridingJavaMethods = processor.getCollection().filter { it !is KotlinLightMethodForTraitFakeOverride } sortedWith (comparator)
|
||||
if (overridingJavaMethods.isEmpty()) return null
|
||||
|
||||
val start = if (isAbstract) DaemonBundle.message("method.is.implemented.header") else DaemonBundle.message("method.is.overriden.header")
|
||||
@@ -109,7 +109,7 @@ public fun navigateToOverriddenMethod(e: MouseEvent?, method: PsiMethod) {
|
||||
val showMethodNames = !PsiUtil.allMethodsHaveSameSignature(overridingJavaMethods.toTypedArray())
|
||||
|
||||
val renderer = MethodCellRenderer(showMethodNames)
|
||||
overridingJavaMethods = overridingJavaMethods.sortBy(renderer.getComparator())
|
||||
overridingJavaMethods = overridingJavaMethods.sortedWith(renderer.comparator)
|
||||
|
||||
val methodsUpdater = OverridingMethodsUpdater(method, renderer)
|
||||
PsiElementListNavigator.openTargets(
|
||||
|
||||
@@ -73,7 +73,7 @@ fun getOverriddenPropertyTooltip(property: JetProperty): String? {
|
||||
JetBundle.message("property.is.overridden.header")
|
||||
|
||||
val pattern = " {0}"
|
||||
return GutterIconTooltipHelper.composeText(collectedClasses.sortBy(PsiClassListCellRenderer().getComparator()), start, pattern)
|
||||
return GutterIconTooltipHelper.composeText(collectedClasses.sortedWith(PsiClassListCellRenderer().comparator), start, pattern)
|
||||
}
|
||||
|
||||
fun navigateToPropertyOverriddenDeclarations(e: MouseEvent?, property: JetProperty) {
|
||||
@@ -105,7 +105,7 @@ fun navigateToPropertyOverriddenDeclarations(e: MouseEvent?, property: JetProper
|
||||
|
||||
val renderer = DefaultPsiElementCellRenderer()
|
||||
val navigatingOverrides = elementProcessor.getResults()
|
||||
.sortBy(renderer.getComparator())
|
||||
.sortedWith(renderer.comparator)
|
||||
.filterIsInstance<NavigatablePsiElement>()
|
||||
|
||||
PsiElementListNavigator.openTargets(e,
|
||||
|
||||
@@ -60,7 +60,7 @@ object SuperDeclarationMarkerTooltip: Function<JetDeclaration, String> {
|
||||
"${if (!isAbstract && isBaseAbstract) "Implements" else "Overrides"} $memberKind in '${renderer.render(declaration)}'"
|
||||
}
|
||||
|
||||
return containingStrings.sort().join(separator = "<br/>")
|
||||
return containingStrings.sorted().join(separator = "<br/>")
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -220,7 +220,7 @@ public class KotlinImportOptimizer() : ImportOptimizer {
|
||||
//TODO: drop unused aliases?
|
||||
aliasImports.mapTo(importsToGenerate) { ImportPath(it.getValue(), false, it.getKey())}
|
||||
|
||||
val sortedImportsToGenerate = importsToGenerate.sortBy(importInsertHelper.importSortComparator)
|
||||
val sortedImportsToGenerate = importsToGenerate.sortedWith(importInsertHelper.importSortComparator)
|
||||
|
||||
// check if no changes to imports required
|
||||
val oldImports = file.importDirectives
|
||||
|
||||
+1
-1
@@ -171,7 +171,7 @@ internal class TypeParameterListExpression(private val mandatoryTypeParameters:
|
||||
}
|
||||
|
||||
|
||||
val sortedRenderedTypeParameters = renderedTypeParameters.sortBy { if (it.fake) it.typeParameter.getIndex() else -1}
|
||||
val sortedRenderedTypeParameters = renderedTypeParameters.sortedBy { if (it.fake) it.typeParameter.getIndex() else -1 }
|
||||
currentTypeParameters = sortedRenderedTypeParameters.map { it.typeParameter }
|
||||
|
||||
return TextResult(
|
||||
|
||||
+8
-8
@@ -234,7 +234,7 @@ private fun ExtractionData.getLocalDeclarationsWithNonLocalUsages(
|
||||
}
|
||||
}
|
||||
}
|
||||
return declarations.sortBy { it.getTextRange()!!.getStartOffset() }
|
||||
return declarations.sortedBy { it.getTextRange()!!.getStartOffset() }
|
||||
}
|
||||
|
||||
private fun ExtractionData.analyzeControlFlow(
|
||||
@@ -314,12 +314,12 @@ private fun ExtractionData.analyzeControlFlow(
|
||||
}
|
||||
|
||||
if (declarationsToReport.isNotEmpty()) {
|
||||
val localVarStr = declarationsToReport.map { it.renderForMessage(bindingContext)!! }.distinct().sort()
|
||||
val localVarStr = declarationsToReport.map { it.renderForMessage(bindingContext)!! }.distinct().sorted()
|
||||
return controlFlow to ErrorMessage.DECLARATIONS_ARE_USED_OUTSIDE.addAdditionalInfo(localVarStr)
|
||||
}
|
||||
|
||||
val outParameters =
|
||||
parameters.filter { it.mirrorVarName != null && modifiedVarDescriptors[it.originalDescriptor] != null }.sortBy { it.nameForRef }
|
||||
parameters.filter { it.mirrorVarName != null && modifiedVarDescriptors[it.originalDescriptor] != null }.sortedBy { it.nameForRef }
|
||||
val outDeclarations =
|
||||
declarationsToCopy.filter { modifiedVarDescriptors[bindingContext[BindingContext.DECLARATION_TO_DESCRIPTOR, it]] != null }
|
||||
val modifiedValueCount = outParameters.size() + outDeclarations.size()
|
||||
@@ -363,7 +363,7 @@ private fun ExtractionData.analyzeControlFlow(
|
||||
if (!options.enableListBoxing) {
|
||||
val outValuesStr =
|
||||
(outParameters.map { it.originalDescriptor.renderForMessage() }
|
||||
+ outDeclarations.map { it.renderForMessage(bindingContext)!! }).sort()
|
||||
+ outDeclarations.map { it.renderForMessage(bindingContext)!! }).sorted()
|
||||
return controlFlow to ErrorMessage.MULTIPLE_OUTPUT.addAdditionalInfo(outValuesStr)
|
||||
}
|
||||
OutputValueBoxer::AsList
|
||||
@@ -837,7 +837,7 @@ private fun ExtractionData.checkDeclarationsMovingOutOfScope(
|
||||
)
|
||||
|
||||
if (declarationsOutOfScope.isNotEmpty()) {
|
||||
val declStr = declarationsOutOfScope.map { it.renderForMessage(bindingContext)!! }.sort()
|
||||
val declStr = declarationsOutOfScope.map { it.renderForMessage(bindingContext)!! }.sorted()
|
||||
return ErrorMessage.DECLARATIONS_OUT_OF_SCOPE.addAdditionalInfo(declStr)
|
||||
}
|
||||
|
||||
@@ -909,7 +909,7 @@ fun ExtractionData.performAnalysis(): AnalysisResult {
|
||||
returnType.processTypeIfExtractable(paramsInfo.typeParameters, paramsInfo.nonDenotableTypes, options, targetScope)
|
||||
|
||||
if (paramsInfo.nonDenotableTypes.isNotEmpty()) {
|
||||
val typeStr = paramsInfo.nonDenotableTypes.map {it.renderForMessage()}.sort()
|
||||
val typeStr = paramsInfo.nonDenotableTypes.map {it.renderForMessage()}.sorted()
|
||||
return AnalysisResult(
|
||||
null,
|
||||
Status.CRITICAL_ERROR,
|
||||
@@ -939,9 +939,9 @@ fun ExtractionData.performAnalysis(): AnalysisResult {
|
||||
bindingContext,
|
||||
suggestFunctionNames(returnType),
|
||||
getDefaultVisibility(),
|
||||
adjustedParameters.sortBy { it.name },
|
||||
adjustedParameters.sortedBy { it.name },
|
||||
receiverParameter,
|
||||
paramsInfo.typeParameters.sortBy { it.originalDeclaration.getName()!! },
|
||||
paramsInfo.typeParameters.sortedBy { it.originalDeclaration.getName()!! },
|
||||
paramsInfo.replacementMap,
|
||||
if (messages.isEmpty()) controlFlow else controlFlow.toDefault(),
|
||||
returnType
|
||||
|
||||
+1
-1
@@ -482,7 +482,7 @@ fun ExtractionGeneratorConfiguration.generateDeclaration(
|
||||
* Sort by descending position so that internals of value/type arguments in calls and qualified types are replaced
|
||||
* before calls/types themselves
|
||||
*/
|
||||
for ((offsetInBody, resolveResult) in descriptor.extractionData.refOffsetToDeclaration.entrySet().sortDescendingBy { it.key }) {
|
||||
for ((offsetInBody, resolveResult) in descriptor.extractionData.refOffsetToDeclaration.entrySet().sortedByDescending { it.key }) {
|
||||
val expr = file.findElementAt(bodyOffset + offsetInBody)?.getNonStrictParentOfType<JetSimpleNameExpression>()
|
||||
assert(expr != null) { "Couldn't find expression at $offsetInBody in '${body.getText()}'" }
|
||||
|
||||
|
||||
+1
-1
@@ -134,7 +134,7 @@ fun IntroduceParameterDescriptor.performRefactoring() {
|
||||
parameters.indexOf(it) + if (withReceiver) 1 else 0
|
||||
} else 0
|
||||
}
|
||||
.sortDescending()
|
||||
.sortedDescending()
|
||||
.forEach { methodDescriptor.removeParameter(it) }
|
||||
}
|
||||
|
||||
|
||||
+1
-1
@@ -65,7 +65,7 @@ public class KotlinIntroduceParameterMethodUsageProcessor : IntroduceParameterMe
|
||||
val changeSignatureData = JetChangeSignatureData(psiMethodDescriptor, method, Collections.singletonList(psiMethodDescriptor))
|
||||
val changeInfo = JetChangeInfo(methodDescriptor = changeSignatureData, context = method)
|
||||
|
||||
data.getParametersToRemove().toNativeArray().toList().sortDescending().forEach { changeInfo.removeParameter(it) }
|
||||
data.getParametersToRemove().toNativeArray().sortedDescending().forEach { changeInfo.removeParameter(it) }
|
||||
|
||||
// Temporarily assume that the new parameter is of Any type. Actual type is substituted during the signature update phase
|
||||
val defaultValueForCall = (data.getParameterInitializer().getExpression()!! as? PsiExpression)?.let { it.j2k() }
|
||||
|
||||
@@ -241,7 +241,7 @@ fun postProcessMoveUsages(usages: List<UsageInfo>,
|
||||
): List<NonCodeUsageInfo> {
|
||||
fun counterpart(e: PsiElement) = oldToNewElementsMapping[e] ?: e
|
||||
|
||||
val sortedUsages = usages.sortBy(
|
||||
val sortedUsages = usages.sortedWith(
|
||||
object : Comparator<UsageInfo> {
|
||||
override fun compare(o1: UsageInfo, o2: UsageInfo): Int {
|
||||
val file1 = o1.getVirtualFile()
|
||||
|
||||
@@ -82,7 +82,8 @@ public class KotlinPullUpHandler : AbstractPullPushMembersHandler(
|
||||
&& declaration.canRefactor()) declaration as PsiNamedElement else null
|
||||
}
|
||||
.filterNotNull()
|
||||
.toSortedListBy { it.qualifiedClassNameForRendering() }
|
||||
.asIterable()
|
||||
.sortedBy { it.qualifiedClassNameForRendering() }
|
||||
|
||||
if (superClasses.isEmpty()) {
|
||||
val containingClass = classOrObject.getStrictParentOfType<JetClassOrObject>()
|
||||
|
||||
@@ -564,7 +564,7 @@ class KotlinPullUpHelper(
|
||||
}
|
||||
|
||||
for ((constructorElement, propertyToInitializerInfo) in targetConstructorToPropertyInitializerInfoMap.entrySet()) {
|
||||
val properties = propertyToInitializerInfo.keySet().toArrayList().sortBy(
|
||||
val properties = propertyToInitializerInfo.keySet().sortedWith(
|
||||
object : Comparator<JetProperty> {
|
||||
override fun compare(property1: JetProperty, property2: JetProperty): Int {
|
||||
val info1 = propertyToInitializerInfo[property1]!!
|
||||
|
||||
@@ -40,7 +40,7 @@ public class KotlinPullUpHelperFactory : PullUpHelperFactory {
|
||||
val membersToMove = membersToMove
|
||||
.map { it.namedUnwrappedElement as? JetNamedDeclaration }
|
||||
.filterNotNull()
|
||||
.sortBy { it.startOffset }
|
||||
.sortedBy { it.startOffset }
|
||||
return KotlinPullUpData(sourceClass, targetClass, membersToMove)
|
||||
}
|
||||
|
||||
|
||||
@@ -382,7 +382,7 @@ public class JetPsiUnifier(
|
||||
}
|
||||
|
||||
private fun matchTypes(types1: Collection<JetType>, types2: Collection<JetType>): Boolean {
|
||||
fun sortTypes(types: Collection<JetType>) = types.sortBy{ DescriptorRenderer.DEBUG_TEXT.renderType(it) }
|
||||
fun sortTypes(types: Collection<JetType>) = types.sortedBy { DescriptorRenderer.DEBUG_TEXT.renderType(it) }
|
||||
|
||||
if (types1.size() != types2.size()) return false
|
||||
return (sortTypes(types1) zip sortTypes(types2)).all { matchTypes(it.first, it.second) == MATCHED }
|
||||
@@ -591,11 +591,11 @@ public class JetPsiUnifier(
|
||||
fun resolveAndSortDeclarationsByDescriptor(declarations: List<JetDeclaration>): List<Pair<JetDeclaration, DeclarationDescriptor?>> {
|
||||
return declarations
|
||||
.map { it to it.bindingContext[BindingContext.DECLARATION_TO_DESCRIPTOR, it] }
|
||||
.sortBy { it.second?.let { IdeDescriptorRenderers.SOURCE_CODE.render(it) } ?: "" }
|
||||
.sortedBy { it.second?.let { IdeDescriptorRenderers.SOURCE_CODE.render(it) } ?: "" }
|
||||
}
|
||||
|
||||
fun sortDeclarationsByElementType(declarations: List<JetDeclaration>): List<JetDeclaration> {
|
||||
return declarations.sortBy { it.getNode()?.getElementType()?.getIndex() ?: -1 }
|
||||
return declarations.sortedBy { it.getNode()?.getElementType()?.getIndex() ?: -1 }
|
||||
}
|
||||
|
||||
if (desc1.getKind() != desc2.getKind()) return UNMATCHED
|
||||
|
||||
@@ -49,7 +49,7 @@ public abstract class AbstractDataFlowValueRenderingTest: JetLightCodeInsightFix
|
||||
val info = expression.analyze().getDataFlowInfo(expression)
|
||||
|
||||
val allValues = (info.getCompleteTypeInfo().keySet() + info.getCompleteNullabilityInfo().keySet()).toSet()
|
||||
val actual = allValues.map { renderDataFlowValue(it) }.filterNotNull().sort().joinToString("\n")
|
||||
val actual = allValues.map { renderDataFlowValue(it) }.filterNotNull().sorted().joinToString("\n")
|
||||
|
||||
JetTestUtils.assertEqualsToFile(File(FileUtil.getNameWithoutExtension(fileName) + ".txt"), actual)
|
||||
}
|
||||
|
||||
@@ -160,7 +160,7 @@ public abstract class AbstractOverrideImplementTest : JetLightCodeInsightFixture
|
||||
val classOrObject = PsiTreeUtil.getParentOfType(elementAtCaret, javaClass<JetClassOrObject>())
|
||||
?: error("Caret should be inside class or object")
|
||||
|
||||
val chooserObjects = handler.collectMembersToGenerate(classOrObject).sortBy { it.descriptor.name.asString() + " in " + it.immediateSuper.containingDeclaration.name.asString() }
|
||||
val chooserObjects = handler.collectMembersToGenerate(classOrObject).sortedBy { it.descriptor.name.asString() + " in " + it.immediateSuper.containingDeclaration.name.asString() }
|
||||
performGenerateCommand(classOrObject, chooserObjects)
|
||||
}
|
||||
|
||||
|
||||
@@ -65,8 +65,8 @@ public abstract class AbstractSmartStepIntoTest : JetLightCodeInsightFixtureTest
|
||||
val sb = StringBuilder()
|
||||
|
||||
val maxExtStrSize = (expected.maxBy { it.length() }?.length() ?: 0) + 5
|
||||
val longerList = (if (expected.size() < actual.size()) actual else expected).sort()
|
||||
val shorterList = (if (expected.size() < actual.size()) expected else actual).sort()
|
||||
val longerList = (if (expected.size() < actual.size()) actual else expected).sorted()
|
||||
val shorterList = (if (expected.size() < actual.size()) expected else actual).sorted()
|
||||
for ((i, element) in longerList.withIndex()) {
|
||||
sb.append(element)
|
||||
sb.append(" ".repeat(maxExtStrSize - element.length()))
|
||||
|
||||
@@ -86,7 +86,7 @@ public abstract class AbstractMemberPullPushTest : JetLightCodeInsightFixtureTes
|
||||
}
|
||||
catch(e: Exception) {
|
||||
val message = when (e) {
|
||||
is BaseRefactoringProcessor.ConflictsInTestsException -> e.messages.sort().joinToString("\n")
|
||||
is BaseRefactoringProcessor.ConflictsInTestsException -> e.messages.sorted().joinToString("\n")
|
||||
is CommonRefactoringUtil.RefactoringErrorHintException -> e.getMessage()!!
|
||||
else -> throw e
|
||||
}
|
||||
|
||||
+1
-1
@@ -339,7 +339,7 @@ public abstract class AbstractJetExtractionTest() : JetLightCodeInsightFixtureTe
|
||||
}
|
||||
}
|
||||
catch(e: Exception) {
|
||||
val message = if (e is ConflictsInTestsException) e.getMessages().sort().joinToString(" ") else e.getMessage()
|
||||
val message = if (e is ConflictsInTestsException) e.getMessages().sorted().joinToString(" ") else e.getMessage()
|
||||
JetTestUtils.assertEqualsToFile(conflictFile, message?.replace("\n", " ") ?: e.javaClass.getName())
|
||||
}
|
||||
finally {
|
||||
|
||||
@@ -95,7 +95,7 @@ public abstract class AbstractJetMoveTest : KotlinMultiFileTestCase() {
|
||||
assert(!conflictFile.exists())
|
||||
}
|
||||
catch(e: ConflictsInTestsException) {
|
||||
JetTestUtils.assertEqualsToFile(conflictFile, e.getMessages().sort().joinToString("\n"))
|
||||
JetTestUtils.assertEqualsToFile(conflictFile, e.getMessages().sorted().joinToString("\n"))
|
||||
}
|
||||
finally {
|
||||
PsiDocumentManager.getInstance(getProject()!!).commitAllDocuments()
|
||||
|
||||
+1
-1
@@ -69,7 +69,7 @@ public class JetNameSuggesterTest : LightCodeInsightFixtureTestCase() {
|
||||
try {
|
||||
JetRefactoringUtil.selectExpression(myFixture.getEditor(), file, object : JetRefactoringUtil.SelectExpressionCallback {
|
||||
override fun run(expression: JetExpression?) {
|
||||
val names = KotlinNameSuggester.suggestNamesByExpressionAndType(expression!!, expression.analyze(BodyResolveMode.PARTIAL), { true }, "value").sort()
|
||||
val names = KotlinNameSuggester.suggestNamesByExpressionAndType(expression!!, expression.analyze(BodyResolveMode.PARTIAL), { true }, "value").sorted()
|
||||
val result = StringUtil.join(names, "\n").trim()
|
||||
assertEquals(expectedResultText, result)
|
||||
}
|
||||
|
||||
@@ -105,7 +105,7 @@ public abstract class AbstractPartialBodyResolveTest : JetLightCodeInsightFixtur
|
||||
|
||||
val skippedStatements = set
|
||||
.filter { !it.parents.any { it in set } } // do not include skipped statements which are inside other skipped statement
|
||||
.sortBy { it.getTextOffset() }
|
||||
.sortedBy { it.getTextOffset() }
|
||||
|
||||
myFixture.getProject().executeWriteCommand("") {
|
||||
for (statement in skippedStatements) {
|
||||
|
||||
@@ -81,7 +81,7 @@ public abstract class AbstractReferenceResolveTest : KotlinLightPlatformCodeInsi
|
||||
actualResolvedTo.add(ReferenceUtils.renderAsGotoImplementation(result.getElement()!!))
|
||||
}
|
||||
|
||||
UsefulTestCase.assertOrderedEquals("Not matching for reference #$index", actualResolvedTo.sort(), expectedReferences.sort())
|
||||
UsefulTestCase.assertOrderedEquals("Not matching for reference #$index", actualResolvedTo.sorted(), expectedReferences.sorted())
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -51,6 +51,6 @@ public class KotlinReferencesSearchTest(): AbstractSearcherTest() {
|
||||
private inline fun doTest<reified T: PsiElement>(): List<PsiReference> {
|
||||
myFixture.configureByFile(getFileName())
|
||||
val func = myFixture.getElementAtCaret().getParentOfType<T>(false)!!
|
||||
return ReferencesSearch.search(func).findAll().sortBy { it.getElement().getTextRange().getStartOffset() }
|
||||
return ReferencesSearch.search(func).findAll().sortedBy { it.getElement().getTextRange().getStartOffset() }
|
||||
}
|
||||
}
|
||||
|
||||
@@ -189,7 +189,7 @@ public class JavaToKotlinConverter(
|
||||
private fun processUsages(refs: Collection<ReferenceInfo>) {
|
||||
for (fileRefs in refs.groupBy { it.file }.values()) { // group by file for faster sorting
|
||||
ReferenceLoop@
|
||||
for ((reference, target, file, processings) in fileRefs.sortBy(ReferenceComparator)) {
|
||||
for ((reference, target, file, processings) in fileRefs.sortedWith(ReferenceComparator)) {
|
||||
val processors = when (reference.getElement().getLanguage()) {
|
||||
JavaLanguage.INSTANCE -> processings.map { it.javaCodeProcessor }.filterNotNull()
|
||||
KotlinLanguage.INSTANCE -> processings.map { it.kotlinCodeProcessor }.filterNotNull()
|
||||
|
||||
@@ -143,7 +143,7 @@ class OverloadReducer(
|
||||
private fun dropOverloadsForDefaultValues(equivalenceMap: Map<PsiMethod, EquivalentOverloadInfo>) {
|
||||
val dropCandidates = equivalenceMap
|
||||
.map { it.key }
|
||||
.sortBy { -it.getParameterList().getParametersCount() } // we will try to drop them starting from ones with more parameters
|
||||
.sortedBy { -it.getParameterList().getParametersCount() } // we will try to drop them starting from ones with more parameters
|
||||
|
||||
DropCandidatesLoop@
|
||||
for (method in dropCandidates) {
|
||||
|
||||
@@ -314,7 +314,7 @@ public abstract class AbstractIncrementalJpsTest(
|
||||
|
||||
val mapping = project.dataManager.getSourceToOutputMap(target)
|
||||
mapping.sources.forEach {
|
||||
val outputs = mapping.getOutputs(it)!!.sort()
|
||||
val outputs = mapping.getOutputs(it)!!.sorted()
|
||||
if (outputs.isNotEmpty()) {
|
||||
result.println("source $it -> $outputs")
|
||||
}
|
||||
|
||||
@@ -640,7 +640,7 @@ public class KotlinJpsBuildTest : AbstractKotlinJpsBuildTestCase() {
|
||||
"""Classpath entry points to a non-existent location: TEST_PATH/some/test.class"""),
|
||||
warnings.map {
|
||||
it.messageText.replace(File("").absolutePath, "TEST_PATH").replace("\\", "/")
|
||||
}.sort().toTypedArray()
|
||||
}.sorted().toTypedArray()
|
||||
)
|
||||
}
|
||||
|
||||
|
||||
+2
-2
@@ -53,7 +53,7 @@ fun getDirectoryString(dir: File, interestingPaths: List<String>): String {
|
||||
val listFiles = dir.listFiles()
|
||||
assertNotNull(listFiles)
|
||||
|
||||
val children = listFiles!!.toList().sortBy { it.getName() }.sortBy { it.isDirectory() }
|
||||
val children = listFiles!!.toList().sortedBy { it.getName() }.sortedBy { it.isDirectory() }
|
||||
for (child in children) {
|
||||
if (child.isDirectory()) {
|
||||
p.println(child.name)
|
||||
@@ -101,7 +101,7 @@ fun assertEqualDirectories(expected: File, actual: File, forgiveExtraFiles: Bool
|
||||
val commonPaths = Sets.intersection(pathsInExpected, pathsInActual)
|
||||
val changedPaths = commonPaths
|
||||
.filter { DUMP_ALL || !Arrays.equals(File(expected, it).readBytes(), File(actual, it).readBytes()) }
|
||||
.sort()
|
||||
.sorted()
|
||||
|
||||
val expectedString = getDirectoryString(expected, changedPaths)
|
||||
val actualString = getDirectoryString(actual, changedPaths)
|
||||
|
||||
+1
-1
@@ -344,7 +344,7 @@ private fun Map<TypeParameterDescriptor, JetType>.addReifiedTypeArgsTo(
|
||||
val reifiedTypeArguments = SmartList<JsExpression>()
|
||||
val patternTranslator = PatternTranslator.newInstance(context)
|
||||
|
||||
for (param in keySet().sortBy { it.getIndex() }) {
|
||||
for (param in keySet().sortedBy { it.getIndex() }) {
|
||||
if (!param.isReified()) continue
|
||||
|
||||
val argumentType = get(param)
|
||||
|
||||
+1
-1
@@ -67,7 +67,7 @@ public abstract class AndroidLayoutXmlFileManager(val project: Project) {
|
||||
|
||||
val layoutNameToXmls = allLayoutPsiFiles
|
||||
.groupBy { it.name.substringBeforeLast('.') }
|
||||
.mapValues { it.getValue().sortBy { it.parent!!.name.length() } }
|
||||
.mapValues { it.getValue().sortedBy { it.parent!!.name.length() } }
|
||||
|
||||
return layoutNameToXmls
|
||||
}
|
||||
|
||||
+1
-1
@@ -19,7 +19,7 @@ package org.jetbrains.kotlin.android.synthetic.res
|
||||
import org.jetbrains.kotlin.android.synthetic.AndroidConst
|
||||
|
||||
public data class AndroidModuleInfo(val applicationPackage: String, resDirectories: List<String>) {
|
||||
val resDirectories = resDirectories.sort()
|
||||
val resDirectories = resDirectories.sorted()
|
||||
}
|
||||
|
||||
public abstract class AndroidResource(val id: String) {
|
||||
|
||||
Reference in New Issue
Block a user