Module Resp_server.Make

Parameters

module Server : SERVER
module Auth : AUTH
module Value : Resp.S with type Reader.ic = Server.ic and type Writer.oc = Server.oc

Signature

type ic = Server.ic
type oc = Server.oc
type server = Server.server
type data = Server.data
module Client : sig ... end
val run : server -> ((ic * oc) -> unit Lwt.t) -> unit Lwt.t
module Value = Value
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