hyperdriver/service/
mod.rs

1//! A collection of utilities for working with `Service` types and Servers.
2
3#[cfg(feature = "client")]
4pub(crate) mod client;
5mod error;
6#[cfg(feature = "client")]
7mod host;
8mod http;
9#[cfg(feature = "incoming")]
10mod incoming;
11mod make;
12mod option;
13mod serviceref;
14mod shared;
15mod timeout;
16
17#[cfg(feature = "client")]
18pub use self::client::{ExecuteRequest, RequestExecutor};
19pub use self::error::{MaybeErrorFuture, PreprocessLayer, PreprocessService};
20#[cfg(feature = "client")]
21pub use self::host::{SetHostHeader, SetHostHeaderLayer};
22#[cfg(feature = "client")]
23pub use self::http::http1::{Http1ChecksLayer, Http1ChecksService};
24#[cfg(feature = "client")]
25pub use self::http::http2::{Http2ChecksLayer, Http2ChecksService};
26pub use self::http::HttpService;
27#[cfg(feature = "incoming")]
28#[deprecated(since = "0.7.0", note = "Use IncomingRequestService instead")]
29pub use self::incoming::{
30    IncomingRequestLayer as AdaptIncomingLayer, IncomingRequestService as AdaptIncomingService,
31};
32#[cfg(feature = "incoming")]
33pub use self::incoming::{
34    IncomingRequestLayer, IncomingRequestService, IncomingResponseLayer, IncomingResponseService,
35};
36
37pub use self::make::{make_service_fn, BoxMakeServiceLayer, BoxMakeServiceRef, MakeServiceRef};
38pub use option::{OptionLayer, OptionLayerExt, OptionService};
39pub use serviceref::ServiceRef;
40pub use shared::SharedService;
41pub use timeout::{Timeout, TimeoutLayer};
42pub use tower::{service_fn, Service, ServiceBuilder, ServiceExt};