diff options
Diffstat (limited to 'Rx.NET/System.Reactive.Linq/Reactive/Linq/Observαble/OfType.cs')
-rw-r--r-- | Rx.NET/System.Reactive.Linq/Reactive/Linq/Observαble/OfType.cs | 53 |
1 files changed, 0 insertions, 53 deletions
diff --git a/Rx.NET/System.Reactive.Linq/Reactive/Linq/Observαble/OfType.cs b/Rx.NET/System.Reactive.Linq/Reactive/Linq/Observαble/OfType.cs deleted file mode 100644 index 07e4515..0000000 --- a/Rx.NET/System.Reactive.Linq/Reactive/Linq/Observαble/OfType.cs +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright (c) Microsoft Open Technologies, Inc. All rights reserved. See License.txt in the project root for license information. - -#if !NO_PERF -using System; - -namespace System.Reactive.Linq.Observαble -{ - class OfType<TSource, TResult> : Producer<TResult> - { - private readonly IObservable<TSource> _source; - - public OfType(IObservable<TSource> source) - { - _source = source; - } - - protected override IDisposable Run(IObserver<TResult> observer, IDisposable cancel, Action<IDisposable> setSink) - { - var sink = new _(observer, cancel); - setSink(sink); - return _source.SubscribeSafe(sink); - } - - class _ : Sink<TResult>, IObserver<TSource> - { - public _(IObserver<TResult> observer, IDisposable cancel) - : base(observer, cancel) - { - } - - public void OnNext(TSource value) - { - if (value is TResult) - { - base._observer.OnNext((TResult)(object)value); - } - } - - public void OnError(Exception error) - { - base._observer.OnError(error); - base.Dispose(); - } - - public void OnCompleted() - { - base._observer.OnCompleted(); - base.Dispose(); - } - } - } -} -#endif
\ No newline at end of file |