mesa_dev/backends/mod.rs
1//! Built-in HTTP client backend implementations.
2//!
3//! The SDK ships with two optional backends, controlled by Cargo features:
4//!
5//! - **`reqwest-client`** (default) — [`ReqwestClient`], an async backend
6//! powered by [reqwest](https://docs.rs/reqwest). Use this with Tokio or any
7//! async runtime.
8//!
9//! - **`ureq-client`** — [`UreqClient`], a blocking backend powered by
10//! [ureq](https://docs.rs/ureq). Suitable for scripts, CLIs, and
11//! environments without an async runtime.
12//!
13//! To use a completely custom HTTP transport, implement [`HttpClient`](crate::HttpClient)
14//! and pass it to [`ClientBuilder::build_with`](crate::ClientBuilder::build_with).
15
16#[cfg(feature = "reqwest-client")]
17mod reqwest_client;
18#[cfg(feature = "reqwest-client")]
19pub use reqwest_client::ReqwestClient;
20
21#[cfg(feature = "ureq-client")]
22mod ureq_client;
23#[cfg(feature = "ureq-client")]
24pub use ureq_client::UreqClient;