Last active
April 18, 2016 12:53
-
-
Save semuserable/373f90dce092e7c1db2a16fa8745edfa to your computer and use it in GitHub Desktop.
Simple methods from Rx made using Observable.Create<T>()
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
public static class RxExamples | |
{ | |
// Equal to Observable.Empty<T>() | |
public static IObservable<T> Empty<T>() | |
{ | |
return Observable.Create<T>(observer => | |
{ | |
observer.OnCompleted(); | |
return Disposable.Empty; | |
}); | |
} | |
// Equal to Observable.Return<T>(/* T value */) | |
public static IObservable<T> Return<T>(T value) | |
{ | |
return Observable.Create<T>(observer => | |
{ | |
observer.OnNext(value); | |
observer.OnCompleted(); | |
return Disposable.Empty; | |
}); | |
} | |
// Equal to Observable.Never<T>() | |
public static IObservable<T> Never<T>(T value) | |
{ | |
return Observable.Create<T>(observer => Disposable.Empty); | |
} | |
// Equal to Observable.Throw<T>(new Exception()); | |
public static IObservable<T> Throw<T>(Exception exception) | |
{ | |
return Observable.Create<T>(observer => | |
{ | |
observer.OnError(exception); | |
return Disposable.Empty; | |
}); | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment