diff --git a/idea/src/org/jetbrains/kotlin/idea/intentions/loopToCallChain/result/AddToCollectionTransformation.kt b/idea/src/org/jetbrains/kotlin/idea/intentions/loopToCallChain/result/AddToCollectionTransformation.kt index d34ed91094f..3653a91662c 100644 --- a/idea/src/org/jetbrains/kotlin/idea/intentions/loopToCallChain/result/AddToCollectionTransformation.kt +++ b/idea/src/org/jetbrains/kotlin/idea/intentions/loopToCallChain/result/AddToCollectionTransformation.kt @@ -43,6 +43,10 @@ class AddToCollectionTransformation( FilterToTransformation(loop, inputVariable, targetCollection, previousTransformation.effectiveCondition()) //TODO: use filterNotTo? } + is MapTransformation -> { + MapToTransformation(loop, previousTransformation.inputVariable, targetCollection, previousTransformation.mapping) + } + is FlatMapTransformation -> { FlatMapToTransformation(loop, previousTransformation.inputVariable, targetCollection, previousTransformation.transform) } diff --git a/idea/testData/intentions/loopToCallChain/mapTo2.kt b/idea/testData/intentions/loopToCallChain/mapTo2.kt new file mode 100644 index 00000000000..3cca030a1f2 --- /dev/null +++ b/idea/testData/intentions/loopToCallChain/mapTo2.kt @@ -0,0 +1,7 @@ +// WITH_RUNTIME +fun foo(list: List, target: MutableList) { + for (s in list) { + val l = s.length + target.add(l) + } +} \ No newline at end of file diff --git a/idea/testData/intentions/loopToCallChain/mapTo2.kt.after b/idea/testData/intentions/loopToCallChain/mapTo2.kt.after new file mode 100644 index 00000000000..9c936cb091f --- /dev/null +++ b/idea/testData/intentions/loopToCallChain/mapTo2.kt.after @@ -0,0 +1,4 @@ +// WITH_RUNTIME +fun foo(list: List, target: MutableList) { + list.mapTo(target) { it.length } +} \ No newline at end of file