Make.IO
include Cohttp.S.IO with type 'a t = 'a Lwt.t with type conn = S.flow
a >>= b
will pass the result of a
to the b
function. This is a monadic bind
.
val return : 'a -> 'a t
return a
will construct a constant IO value.
val with_input_buffer :
ic ->
f:(string -> pos:int -> len:int -> 'a * int) ->
'a
read_line ic
will read a single line terminated by CR or CRLF from the input channel ic
. It returns None
if EOF or other error condition is reached.
read ic len
will block until a maximum of len
characters are read from the input channel ic
. It returns an empty string if EOF or some other error condition occurs on the input channel, and can also return fewer than len
characters if input buffering is not sufficient to satisfy the request.
write oc s
will block until the complete s
string is written to the output channel oc
.
catch f
is f () >|= Result.ok
, unless f
fails with an IO error, in which case it returns the error.
val pp_error : Stdlib.Format.formatter -> error -> unit