internal void ValidateConsistency() { IList <TSourceItem> source = _sourceScalarTakingWhile.getValue(_sourceTakingWhile, new ObservableCollection <TSourceItem>()) as IList <TSourceItem>; OcConsumer ocConsumer = new OcConsumer(); // ReSharper disable once AssignNullToNotNullAttribute if (!this.SequenceEqual(source.TakeWhile((si, i) => new Computing <bool>(_indexedPredicateExpression.ApplyParameters(si, i)).For(ocConsumer).Value))) { throw new ObservableComputationsException(this, "Consistency violation: TakingWhile.1"); } }
public static TComputing For <TComputing>(this TComputing computing, OcConsumer ocConsumer) where TComputing : IComputing { ((IComputingInternal)computing).AddConsumer(ocConsumer); return(computing); }