Module Tezos_stdlib_unix.Lwt_unix_socket

type Tezos_error_monad.Error_monad.error +=
  1. | Socket_path_too_long of string
  2. | Socket_path_wrong_permission of string
  3. | Cannot_create_socket of string
val send : Lwt_io.output_channel -> 'a Data_encoding.t -> 'a -> unit Lwt.t
val recv : Lwt_io.input_channel -> 'a Data_encoding.t -> 'a Lwt.t
val recv_result : Lwt_io.input_channel -> 'a Data_encoding.t -> 'a Tezos_error_monad.Error_monad.tzresult Lwt.t
val create_socket_listen : canceler:Lwt_canceler.t -> max_requests:int -> socket_path:string -> Lwt_unix.file_descr Tezos_error_monad.Error_monad.tzresult Lwt.t
val create_socket_connect : canceler:Lwt_canceler.t -> socket_path:string -> Lwt_unix.file_descr Tezos_error_monad.Error_monad.tzresult Lwt.t