Module Server.Make

Parameters

Signature

type ic = Reader.ic
type oc = Writer.oc
type server = Conduit_lwt_unix.ctx * Conduit_lwt_unix.server
type data = Data.data
module Client : sig ... end
val run : server -> ((ic * oc) -> unit Lwt.t) -> unit Lwt.t
module Value : Resp.S with type Reader.ic = ic and type Writer.oc = oc
module Auth = Auth
type client = {
data : Client.t;
ic : ic;
oc : oc;
}
type command = data -> client -> string -> int -> unit Lwt.t
val discard_n : client -> int -> unit Lwt.t
val finish : client -> nargs:int -> int -> unit Lwt.t
val ok : client -> unit Lwt.t
val error : client -> string -> unit Lwt.t
val invalid_arguments : client -> unit Lwt.t
val send : client -> Resp.t -> unit Lwt.t
val recv : client -> Resp.t Lwt.t
type t
val create : ?auth:Auth.t -> ?commands:(string * command) list -> ?default:string -> server -> data -> t
val start : t -> unit Lwt.t