package async

  1. Overview
  2. Docs
Monadic concurrency library

Install

Dune Dependency

Authors

Maintainers

Sources

v0.17.0.tar.gz
sha256=3edbaa62a7ea910da0d5c06974da9b2b7e14a9e2648596bc7c9f09c89970b5f8

doc/async.async_rpc/Async_rpc/Rpc/Transport/Reader/index.html

Module Transport.ReaderSource

include module type of struct include Async_rpc_kernel.Rpc.Transport.Reader end
include S
Sourceval sexp_of_t : t -> Sexplib0.Sexp.t
Sourceval close : t -> unit Async_kernel.Deferred.t
Sourceval is_closed : t -> bool
Sourceval bytes_read : t -> Core.Int63.t
Sourceval read_forever : t -> on_message: (Core.Bigstring.t -> pos:int -> len:int -> 'a Async_rpc_kernel__.Transport_intf.Handler_result.t) -> on_end_of_batch:(unit -> unit) -> ('a, [ `Eof | `Closed ]) Core.Result.t Async_kernel.Deferred.t

Start reading incoming messages and pass them to on_message, until it returns Stop _.

on_end_of_batch is called after processing a batch of messages, before waiting for the file descriptor to become readable again.

Sourceval pack : (module S with type t = 'a) -> 'a -> t
Sourceval read_one_message_bin_prot : t -> 'a Core.Bin_prot.Type_class.reader -> ('a, [ `Closed | `Eof ]) Core.Result.t Async_kernel.Deferred.t

Convenience function to wait for the first message and un-bin_prot it.

Async RPC uses this to handle the handshake at the beginning of the message stream.

Sourceval of_reader : ?max_message_size:int -> Async_reader.t -> t
OCaml

Innovation. Community. Security.