blob: 7b5bad05337672679052e7bb1c86f8dfb6ef854d (
plain)
1
2
3
4
5
6
7
8
9
10
11
|
package moe.nea.firmament.util
fun <T : Any> T.iterate(iterator: (T) -> T?): Sequence<T> = sequence {
var x: T? = this@iterate
while (x != null) {
yield(x)
x = iterator(x)
}
}
|