示例#1
0
 public static IRxVal <Option <B> > optFlatMap <A, B>(
     this IRxVal <Option <A> > source, Fn <A, IRxVal <Option <B> > > extractor
     ) =>
 source.flatMap(aOpt =>
                aOpt.fold(
                    () => RxVal.cached(F.none <B>()),
                    extractor
                    )
                );
示例#2
0
 public static IRxVal <Option <A> > extract <A>(this Option <IRxVal <A> > rxOpt) =>
 rxOpt.fold(RxVal.cached(F.none <A>()), val => val.map(a => a.some()));
示例#3
0
 public static IRxVal <Option <B> > optFlatMap <A, B>(
     this IRxVal <Option <A> > source, Fn <A, Option <IRxVal <Option <B> > > > extractor
     ) =>
 source.flatMap(aOpt =>
                aOpt.flatMap(extractor).getOrElse(RxVal.cached(F.none <B>()))
                );