Observable.TakeWhile allows you to run a sequence as long as a condition is true (using a delegate so we can perform computations on the actual sequence objects), but it\'s
Combo, using a new SkipUntil and TakeUntil:
SkipUntil
TakeUntil
SkipUntil return source.Publish(s => s.SkipUntil(s.Where(predicate)));
return source.Publish(s => s.SkipUntil(s.Where(predicate)));
TakeUntil (inclusive) return source.Publish(s => s.TakeUntil(s.SkipUntil(predicate)));
return source.Publish(s => s.TakeUntil(s.SkipUntil(predicate)));
Full source: https://gist.github.com/GeorgeTsiokos/a4985b812c4048c428a981468a965a86