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> |
Dependencies |
|
Conflicts |
|
Source [http] | https://github.com/mirage/mirage-channel/releases/download/v4.1.0/mirage-channel-4.1.0.tbz sha256=b0176851d4ddf5978d7072b420118178e6030ea50b33b1185fe3f3d9fda72100 sha512=d6e085cc7c61387fa651757704dd0c76d2fee728725e06174ea8a1c47e63b13217d3683094939a3862fe2f23f18f74dfcdbe4577ba0e9e45609c15d1539edd10 |
Edit | https://github.com/ocaml/opam-repository/tree/master/packages/mirage-channel/mirage-channel.4.1.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
- mehari-mirage
- mirage-types>=3.7.1
- pgx_lwt_mirage
- protocol-9p>=2.0.2
- protocol-9p-unixwith-test & >=2.0.2