2015-12-03 23:51:10 +01:00
|
|
|
open Core.Std
|
|
|
|
|
|
|
|
module Tcp : sig
|
|
|
|
type t
|
|
|
|
val of_string : string -> t
|
|
|
|
val to_string : t -> string
|
2016-02-19 00:20:28 +01:00
|
|
|
val create : host:string -> port:int -> t
|
2015-12-03 23:51:10 +01:00
|
|
|
end = struct
|
|
|
|
type t = string
|
|
|
|
let of_string x =
|
|
|
|
assert (String.is_prefix ~prefix:"tcp://" x);
|
|
|
|
x
|
2016-02-19 00:20:28 +01:00
|
|
|
let create ~host ~port =
|
|
|
|
assert (port > 0);
|
|
|
|
Printf.sprintf "tcp://%s:%d" host port
|
2015-12-03 23:51:10 +01:00
|
|
|
let to_string x = x
|
|
|
|
end
|
|
|
|
|
|
|
|
module Ipc : sig
|
|
|
|
type t
|
|
|
|
val of_string : string -> t
|
|
|
|
val to_string : t -> string
|
2016-02-19 00:20:28 +01:00
|
|
|
val create : string -> t
|
2015-12-03 23:51:10 +01:00
|
|
|
end = struct
|
|
|
|
type t = string
|
|
|
|
let of_string x =
|
|
|
|
assert (String.is_prefix ~prefix:"ipc://" x);
|
|
|
|
x
|
2016-02-19 00:20:28 +01:00
|
|
|
let create name =
|
|
|
|
Printf.sprintf "ipc://%s" name
|
2015-12-03 23:51:10 +01:00
|
|
|
let to_string x = x
|
|
|
|
end
|
|
|
|
|
|
|
|
module Inproc : sig
|
|
|
|
type t
|
|
|
|
val of_string : string -> t
|
|
|
|
val to_string : t -> string
|
2016-02-19 00:20:28 +01:00
|
|
|
val create : string -> t
|
2015-12-03 23:51:10 +01:00
|
|
|
end = struct
|
|
|
|
type t = string
|
|
|
|
let of_string x =
|
|
|
|
assert (String.is_prefix ~prefix:"inproc://" x);
|
|
|
|
x
|
2016-02-19 00:20:28 +01:00
|
|
|
let create name =
|
2016-07-15 15:31:16 +02:00
|
|
|
Printf.sprintf "inproc://%s" name
|
2015-12-03 23:51:10 +01:00
|
|
|
let to_string x = x
|
|
|
|
end
|
|
|
|
|
|
|
|
type t =
|
|
|
|
| Tcp of Tcp.t
|
|
|
|
| Ipc of Ipc.t
|
|
|
|
| Inproc of Inproc.t
|
|
|
|
|
|
|
|
let to_string = function
|
|
|
|
| Tcp x -> Tcp.to_string x
|
|
|
|
| Ipc x -> Ipc.to_string x
|
|
|
|
| Inproc x -> Inproc.to_string x
|
|
|
|
|