diff --git a/nj2k/src/org/jetbrains/kotlin/nj2k/conversions/BuiltinMembersConversion.kt b/nj2k/src/org/jetbrains/kotlin/nj2k/conversions/BuiltinMembersConversion.kt index 1785706140f..d681ce60e37 100644 --- a/nj2k/src/org/jetbrains/kotlin/nj2k/conversions/BuiltinMembersConversion.kt +++ b/nj2k/src/org/jetbrains/kotlin/nj2k/conversions/BuiltinMembersConversion.kt @@ -32,7 +32,7 @@ class BuiltinMembersConversion(private val context: NewJ2kConverterContext) : Re (receiver.leftNonCodeElements + receiver.rightNonCodeElements + selector.leftNonCodeElements + - selector.rightNonCodeElements).dropSpaceesAtBegining() + selector.rightNonCodeElements).dropSpacesAtBegining() } return when (conversion.replaceType) { diff --git a/nj2k/src/org/jetbrains/kotlin/nj2k/conversions/DefaultArgumentsConversion.kt b/nj2k/src/org/jetbrains/kotlin/nj2k/conversions/DefaultArgumentsConversion.kt index 52353c8e018..555558de404 100644 --- a/nj2k/src/org/jetbrains/kotlin/nj2k/conversions/DefaultArgumentsConversion.kt +++ b/nj2k/src/org/jetbrains/kotlin/nj2k/conversions/DefaultArgumentsConversion.kt @@ -102,10 +102,10 @@ class DefaultArgumentsConversion(private val context: NewJ2kConverterContext) : return applyRecursive(on, ::remapParameterSymbol) } - parameter.initializer = remapParameterSymbol(defaultValue) as JKExpression } element.declarations -= method + calledMethod.appendNonCodeElementsFrom(method) } for (method in element.declarations) { diff --git a/nj2k/src/org/jetbrains/kotlin/nj2k/tree/tokens.kt b/nj2k/src/org/jetbrains/kotlin/nj2k/tree/tokens.kt index 3d276c6df70..ea802ef361f 100644 --- a/nj2k/src/org/jetbrains/kotlin/nj2k/tree/tokens.kt +++ b/nj2k/src/org/jetbrains/kotlin/nj2k/tree/tokens.kt @@ -9,6 +9,7 @@ package org.jetbrains.kotlin.nj2k.tree interface JKNonCodeElement { val text: String } + interface JKSpaceElement : JKNonCodeElement interface JKCommentElement : JKNonCodeElement @@ -30,6 +31,15 @@ fun JKNonCodeElementsListOwner.takeNonCodeElementsFrom(other: JKNonCodeElementsL rightNonCodeElements = other.rightNonCodeElements } + +fun JKNonCodeElementsListOwner.appendNonCodeElementsFrom(other: JKNonCodeElementsListOwner) { + leftNonCodeElements = other.leftNonCodeElements + leftNonCodeElements + rightNonCodeElements = rightNonCodeElements + other.rightNonCodeElements +} + +fun List.dropSpacesAtBegining() = + dropWhile { it is JKSpaceElement } + fun JKTreeElement.commentsFromInside(): List { val comments = mutableListOf() fun recurse(element: JKTreeElement): JKTreeElement {