import java.util.function.Consumer; | |
class Pipeline<I, O> implements Consumer<I> { | |
@Override public final void accept(I input) {} | |
public <K> void then(Pipeline<O, K> pipeline, final Observable<O> observable) { | |
observable.subscribe(pipeline::accept); | |
} | |
} | |
interface Observable<T> { | |
void subscribe(Consumer<T> x); | |
} |