package async_extra

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type
module Client_message : sig ... end
module Server_message : sig ... end
module Server_read_result : sig ... end
type t
val create : ?backlog:int -> ?verbose:bool -> ?log_disconnects:bool -> ?buffer_age_limit:[ `At_most of Core.Time.Span.t | `Unlimited ] -> port:int -> auth: (Async_unix.Unix.Inet_addr.t -> int -> Client_id.t -> [ `Allow | `Deny of string option ] Async_kernel.Deferred.t) -> unit -> t Async_kernel.Deferred.t

The server will not accept any connections until you call listen at least once.

val listen_ignore_errors : t -> (Client_id.t * Client_message.t) Async_kernel.Pipe.Reader.t
val close : t -> Client_id.t -> unit
val close_server : t -> unit Async_kernel.Deferred.t

close all the clients and close the server

val flushed_time : t -> Client_id.t -> [ `Client_not_found | `Flushed of Core.Time.t Async_kernel.Deferred.t ]
val has_client_id : t -> Client_id.t -> bool
val send : t -> Client_id.t -> Server_message.t -> [ `Sent of Core.Time.t | `Drop of exn ] Async_kernel.Deferred.t
val send_ignore_errors : t -> Client_id.t -> Server_message.t -> unit
val send_to_all : t -> Server_message.t -> unit
val client_addr_port : t -> Client_id.t -> (Async_unix.Unix.Inet_addr.t * int) option
val port : t -> int