Skip to content

Instantly share code, notes, and snippets.

@ian-ellis
Created January 17, 2017 03:49
Show Gist options
  • Save ian-ellis/b44b557d0cd29a2444127d57889fac31 to your computer and use it in GitHub Desktop.
Save ian-ellis/b44b557d0cd29a2444127d57889fac31 to your computer and use it in GitHub Desktop.
RX Transformers
public static Observable.Transformer<Integer, Integer> increment() {
return new Observable.Transformer<Integer, Integer>() {
private Integer previous = 0;
@Override
public Observable<Integer> call(Observable<Integer> integerObservable) {
return integerObservable.map(i -> {
Integer val = i + previous;
previous = val;
return val;
});
}
};
}
Observable.from(new Integer[]{1,2,3}).compose(incremenent()).subscribe(i->Log.d("Number: ",i))
//outputs 1,3,6
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment