コード例 #1
0
ファイル: RxValOps.cs プロジェクト: yika-aixi/tlplib
 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
ファイル: RxValOps.cs プロジェクト: yika-aixi/tlplib
 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
ファイル: RxValOps.cs プロジェクト: yika-aixi/tlplib
 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>()))
                );