type sring

Abstract type for a shared ring.

val of_buf : buf:Cstruct.t -> idx_size:int -> name:string -> sring

of_buf ~buf ~idx_size ~name is an sring constructed from buf, of maximum request/response size idx_size. name is used for pretty-printing. buf should be a Cstruct.t comprising pre-allocated contiguous I/O pages.

val of_buf_no_init : buf:Cstruct.t -> idx_size:int -> name:string -> sring

of_buf_no_init is like of_buf, but does not initialise the ring. Use this if the other party has already initialised it.

val to_summary_string : sring -> string

to_summary_string ring is a printable single-line summary of the ring.

module Front : sig ... end

The front-end of the shared ring, which reads requests and reads responses from the remote domain.

module Back : sig ... end

The back-end of the shared ring, which reads requests and writes responses to the remote domain.