package piaf

  1. Overview
  2. Docs
Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source

Module Piaf.BodySource

Sourcetype t
Sourcetype length = [
  1. | `Fixed of Int64.t
  2. | `Chunked
  3. | `Error of [ `Bad_request | `Bad_gateway | `Internal_server_error ]
  4. | `Unknown
  5. | `Close_delimited
]
Sourceval length : t -> length
Sourceval empty : t
Sourceval of_stream : ?length:length -> Bigstringaf.t IOVec.t Stream.t -> t
Sourceval of_string_stream : ?length:length -> string Stream.t -> t
Sourceval of_string : string -> t
Sourceval of_bigstring : ?off:int -> ?len:int -> Bigstringaf.t -> t
Sourceval sendfile : ?length:length -> string -> (t, [> Error.common ]) result
Sourceval to_string : t -> (string, [> Error.t ]) result
Sourceval drain : t -> (unit, [> Error.t ]) result
Sourceval is_closed : t -> bool
Sourceval closed : t -> (unit, [> Error.t ]) result
Sourceval when_closed : f:((unit, [> Error.t ]) result -> unit) -> t -> unit
Sourceval is_errored : t -> bool

Destruction

Sourceval to_list : t -> Bigstringaf.t IOVec.t list
Sourceval to_string_list : t -> string list

Traversal

Sourceval fold : f:('a -> Bigstringaf.t IOVec.t -> 'a) -> init:'a -> t -> ('a, [> Error.t ]) result
Sourceval fold_string : f:('a -> string -> 'a) -> init:'a -> t -> ('a, [> Error.t ]) result
Sourceval iter : f:(Bigstringaf.t IOVec.t -> unit) -> t -> (unit, [> Error.t ]) result
Sourceval iter_p : sw:Eio.Switch.t -> f:(Bigstringaf.t IOVec.t -> unit) -> t -> (unit, [> Error.t ]) result
Sourceval iter_string : f:(string -> unit) -> t -> (unit, [> Error.t ]) result
Sourceval iter_string_p : sw:Eio.Switch.t -> f:(string -> unit) -> t -> (unit, [> Error.t ]) result

Conversion to Stream.t

The functions below convert a Piaf.Body.t to a Stream.t. These functions should be used sparingly, and only when interacting with other APIs that require their argument to be a Lwt_stream.t.

These functions return a tuple of two elements. In addition to returning a Lwt_stream.t, the tuple's second element is a promise that will sleep until the stream is consumed (and closed). This promise will resolve to Ok () if the body was successfully transferred from the peer; otherwise, it will return Error error with an error of type Error.t detailing the failure that caused the body to not have been fully transferred from the peer.

Sourceval to_stream : t -> Bigstringaf.t IOVec.t Stream.t
Sourceval to_string_stream : t -> string Stream.t
OCaml

Innovation. Community. Security.