[−][src]Function epoxy_streams::merge
pub fn merge<T: 'static>(streams: Vec<Stream<T>>) -> Stream<T>
Combines all values emitted from a list of same-typed streams into one single stream.
Examples
use epoxy_streams::ReactiveValue; let stream_host_1: epoxy_streams::Sink<i32> = epoxy_streams::Sink::new(); let stream_1 = stream_host_1.get_stream(); let stream_host_2: epoxy_streams::Sink<i32> = epoxy_streams::Sink::new(); let stream_2 = stream_host_2.get_stream(); let merged = epoxy_streams::merge(vec![stream_1, stream_2]); let merged_value = merged.clone().to_reactive_value(); let emit_count = merged.count_values().to_reactive_value(); stream_host_1.emit(10); assert_eq!(*merged_value.get(), 10); stream_host_2.emit(15); assert_eq!(*merged_value.get(), 15); stream_host_2.emit(16); stream_host_1.emit(17); assert_eq!(*merged_value.get(), 17); assert_eq!(*emit_count.get(), 4);