arrow-core / arrow.core.extensions / OptionMonadCombine / flatMap
open fun <A, B> Kind<ForOption, A>.flatMap(f: (A) -> Kind<ForOption, B>): Option<B>
Do you like Arrow?