//! Runtime-neutral asynchronous transport contract.
use Future;
use ;
/// Asynchronous transport over caller-owned request and response buffers.
///
/// The contract does not select an executor, allocator, HTTP client, TLS
/// implementation, clock, or retry policy. Adapter crates document any runtime
/// requirements they add.
///
/// Implementations must treat cancellation as an error path: dropping the
/// returned future must not expose a partially initialized response as a
/// successful [`TransportResponse`]. Implementations handling secret response
/// data should also clear temporary owned storage when the future is dropped.