mirage-channelversion
Buffered channels for MirageOS FLOW types
Channels are buffered reader/writers built on top of unbuffered FLOW
implementations.
Example:
module Channel = Channel.Make(Flow)
...
Channel.read_exactly ~len:16 t
>>= fun bufs -> (* read header of message *)
let payload_length = Cstruct.(LE.get_uint16 (concat bufs) 0) in
Channel.read_exactly ~len:payload_length t
>>= fun bufs -> (* payload of message *)
(* process message *)
Channel.write_buffer t header;
Channel.write_buffer t payload;
Channel.flush t
>>= fun () ->
mirage-channel is distributed under the ISC license.
Tags | org:mirage |
---|---|
Authors | Anil Madhavapeddy, Mindy Preston and Thomas Gazagnaire |
License | ISC |
Published | |
Homepage | https://github.com/mirage/mirage-channel |
Issue Tracker | https://github.com/mirage/mirage-channel/issues |
Maintainer | Anil Madhavapeddy <anil@recoil.org> |
Available | false |
Dependencies |
|
Conflicts |
|
Source [http] | https://github.com/mirage/mirage-channel/releases/download/v4.0.0/mirage-channel-v4.0.0.tbz sha256=b7e618d311af43a9d3db5b90f945ebde1e09c9e318cf8599d99fb314620cb485 sha512=820057723c197f6454519b606b062272badb921258e365b19c2dbb2c81bdcb6fa0ecf190b7cc44fa936b050da56335a26b7c46cc692c970d6546c86e810010b3 |
Edit | https://github.com/ocaml/opam-repository/tree/master/packages/mirage-channel/mirage-channel.4.0.0/opam |
Required by
- caqti-mirage
- cohttp-mirage>=2.4.0
- docteur-unixwith-test & <0.0.3
- git-mirage>=2.1.2 & <3.0.0
- mirage-types>=3.7.1
- pgx_lwt_mirage
- protocol-9p>=2.0.2
- protocol-9p-unixwith-test & >=2.0.2