tokio_stream/
wrappers.rs

1//! Wrappers for Tokio types that implement `Stream`.
2
3/// Error types for the wrappers.
4pub mod errors {
5    cfg_sync! {
6        pub use crate::wrappers::broadcast::BroadcastStreamRecvError;
7    }
8}
9
10mod mpsc_bounded;
11pub use mpsc_bounded::ReceiverStream;
12
13mod mpsc_unbounded;
14pub use mpsc_unbounded::UnboundedReceiverStream;
15
16cfg_sync! {
17    mod broadcast;
18    pub use broadcast::BroadcastStream;
19
20    mod watch;
21    pub use watch::WatchStream;
22}
23
24cfg_signal! {
25    #[cfg(unix)]
26    mod signal_unix;
27    #[cfg(unix)]
28    pub use signal_unix::SignalStream;
29
30    #[cfg(any(windows, docsrs))]
31    mod signal_windows;
32    #[cfg(any(windows, docsrs))]
33    pub use signal_windows::{CtrlCStream, CtrlBreakStream};
34}
35
36cfg_time! {
37    mod interval;
38    pub use interval::IntervalStream;
39}
40
41cfg_net! {
42    mod tcp_listener;
43    pub use tcp_listener::TcpListenerStream;
44
45    #[cfg(unix)]
46    mod unix_listener;
47    #[cfg(unix)]
48    pub use unix_listener::UnixListenerStream;
49}
50
51cfg_io_util! {
52    mod split;
53    pub use split::SplitStream;
54
55    mod lines;
56    pub use lines::LinesStream;
57}
58
59cfg_fs! {
60    mod read_dir;
61    pub use read_dir::ReadDirStream;
62}