Module R.Transport

type 'a io = 'a t
type connection = connection
type request_body = request_body
type response_body = response_body
val with_response : connection -> Awskit.Request.t -> body:request_body -> consume: (Awskit.Response.t -> response_body -> ('a, Awskit.Error.t) Stdlib.result io) -> ('a, Awskit.Error.t) Stdlib.result io

Send a request and provide the response metadata and body to consume.

The request body is owned by the runtime for the duration of one attempt. The response body is valid only inside consume; callers should scope reads with Response_body.with_reader. Callback exceptions and native cancellation must be preserved by adapters.