Jun Sekine
01/15/2024, 5:49 AMDaniel Pitts
01/15/2024, 2:17 PMDaniel Pitts
01/15/2024, 2:20 PMandThen
and orElse
infix functions.Daniel Pitts
01/15/2024, 2:24 PMclass SimplePartialFunction<A, B>(
val isDefinedAtLambda: (A) -> Boolean,
val applyLambda: (A) -> B
) : PartialFunction<A, B> {
override fun isDefinedAt(a: A): Boolean = isDefinedAtLambda(a)
override fun apply(a: A) = applyLambda(a)
}
fun partialFunction(isDefinedAt: (A) -> Boolean, apply: (A) -> B): PartialFunction<A,B> =
SimplePartialFunction(isDefinedAt, apply)
Daniel Pitts
01/15/2024, 2:28 PMIterable.mapDefined
and Iterable.firstDefined
for clearer meaning. Don't forget to add support for Sequence
😉Daniel Pitts
01/15/2024, 2:30 PMJun Sekine
01/16/2024, 2:51 PM