Minor optimization in MutableList.transformFlat
This commit is contained in:
@@ -38,14 +38,16 @@ inline fun <T> MutableList<T>.transformFlat(transformation: (T) -> List<T>?) {
|
|||||||
|
|
||||||
val transformed = transformation(item)
|
val transformed = transformation(item)
|
||||||
|
|
||||||
if (transformed == null) {
|
when (transformed?.size) {
|
||||||
i++
|
null -> i++
|
||||||
continue
|
0 -> removeAt(i)
|
||||||
|
1 -> set(i++, transformed.first())
|
||||||
|
else -> {
|
||||||
|
addAll(i, transformed)
|
||||||
|
i += transformed.size
|
||||||
|
removeAt(i)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
addAll(i, transformed)
|
|
||||||
i += transformed.size
|
|
||||||
removeAt(i)
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user