Collection that should be converted into Sequence.
Each Collection transforming function (such as map() or filter()) creates a new
Collection (typically List or Set) under the hood.
In case of multiple consequent calls, and a huge number of items in Collection, memory traffic might be significant.
In such a case, using Sequence is preferred.
Example:
class Entity(val key: String, val value: String)
fun getValues(lines: List<String>) = lines
.filter { it.isNotEmpty() }
.map { it.split(',', limit = 2) }
.filter { it.size == 2 }
.map { Entity(it[0], it[1]) }
The quick-fix wraps call chain into asSequence() and toList():
class Entity(val key: String, val value: String)
fun getValues(lines: List<String>) = lines
.asSequence()
.filter { it.isNotEmpty() }
.map { it.split(',', limit = 2) }
.filter { it.size == 2 }
.map { Entity(it[0], it[1]) }
.toList()