Module Resolver

Resolve URIs to endpoints

type service = {
name : string;
port : int;
tls : bool;
}

Description of a single service. Can be populated from /etc/services with the exception of the tls field, which indicates if the connection is intended to be TLS/SSL-encrypted or not (e.g. for https).

val sexp_of_service : service -> Ppx_sexp_conv_lib.Sexp.t
val service_of_sexp : Ppx_sexp_conv_lib.Sexp.t -> service
module type S = sig ... end

Module type for a resolver that can map URIs to concrete endpoints that stream connections can be established with.

module Make : functor (IO : Conduit.IO) -> S with type svc = service and type 'a io = 'a IO.t

Functor to construct a concrete resolver using a Conduit.IO implementation, usually via either Lwt or Async