Skip to main content

atomr_streams_io/
lib.rs

1//! # atomr-streams-io
2//!
3//! Real-world I/O `Source`/`Sink` adapters for `atomr-streams`, behind feature
4//! flags so the core streams crate stays dependency-light:
5//!
6//! * `http` — [`HttpPollSource`](http_poll::HttpPollSource): periodic / conditional GET polling.
7//! * `ws` — [`WsSource`](ws::WsSource): WebSocket frame source with reconnect.
8//!
9//! Token-bucket rate limiting lives upstream in `atomr_streams::rate`
10//! (`token_bucket`, `token_bucket_keyed`, `respect_retry_after`) so backpressure
11//! and limiting are uniform across all sources.
12
13#![forbid(unsafe_code)]
14
15#[cfg(feature = "http")]
16pub mod http_poll;
17
18#[cfg(feature = "ws")]
19pub mod ws;