コード例 #1
0
ファイル: Observable.cs プロジェクト: yongaru/fuse-studio
 public static IObservableList <T> ToObservableList <T>(this IObservable <IImmutableList <T> > self)
 {
     return(self
            .Scan(
                new
     {
         PrevList = (IImmutableList <T>)ImmutableList <T> .Empty,
         Changes = Optional.None <ListChange <T> >()
     },
                (acc, newList) => new
     {
         PrevList = newList,
         Changes = ListChange.IncrementalChanges(acc.PrevList, newList),
     })
            .SelectMany(acc => acc.Changes)
            .UnsafeAsObservableList());
 }