#![deny(missing_docs)]
mod body;
mod host;
mod policy;
mod transport;
pub use host::{WasiHttpHost, WasiHttpHostBuilder};
pub use policy::{BuildError, ExactOriginPolicy, PolicyError, RejectionReason};
#[cfg(feature = "smol")]
pub use transport::SmolTransportBuilder;
#[cfg(feature = "tokio")]
pub use transport::TokioTransportBuilder;
pub use transport::{BoxFuture, HostForwardOptions, HostResponse, WasiHostTransport};
#[cfg(feature = "compio")]
pub use transport::{CompioHostTransport, CompioTransportBuilder};
#[cfg(test)]
pub(crate) use body::request_body_limit_from_error;
pub(crate) use body::{
DeadlineBody, RequestLimitBody, ResponseLimitBody, map_aioduct_error, map_wasi_body_error,
};
#[cfg(test)]
pub(crate) use policy::RejectionObserver;
mod sealed {
pub trait Sealed {}
impl<R, C> Sealed for crate::HttpEngineSend<R, C>
where
R: crate::RuntimePoll,
C: crate::ConnectorSend,
{
}
#[cfg(feature = "compio")]
impl Sealed for super::CompioHostTransport {}
}
#[cfg(test)]
mod tests;