| bind |
fun <A, B> ObservableValue<out A>.bind(function: (A) -> ObservableValue<B>): ObservableValue<B>data class Person(val height: ObservableValue) val person: ObservableValue = (..) val personHeight: ObservableValue = person.bind { it.height } |
| bindOut |
fun <A, B> ObservableValue<out A>.bindOut(function: (A) -> ObservableValue<out B>): ObservableValue<out B>A variant of bind that has out variance on the output type. This is sometimes useful when kotlin is too eager to propagate variance constraints and type inference fails. |
| map |
fun <A, B> ObservableValue<out A>.map(function: (A) -> B): ObservableValue<B>val person: ObservableValue = (..) val personName: ObservableValue = person.map { it.name } |