30 lines
688 B
OCaml
30 lines
688 B
OCaml
module Protocol_version = struct
|
|
(* TODO *)
|
|
(* libtool version format *)
|
|
let current = 0
|
|
let revision = 0
|
|
let age = 0
|
|
let v = Fmt.str "%d:%d:%d"
|
|
end
|
|
|
|
(* -- Ptime -- *)
|
|
|
|
let ptime_to_int64_us p = Int64.of_float (1_000_000. *. Ptime.to_float_s p)
|
|
|
|
let ptime_of_span_exn span =
|
|
match Ptime.of_span span with
|
|
| None -> Fmt.failwith "Ptime.of_span: not in the range [min;max]"
|
|
| Some p -> p
|
|
|
|
let ptime_add_span_exn p span =
|
|
match Ptime.add_span p span with
|
|
| None -> Fmt.failwith "Ptime.add_span: not in the range [min;max]"
|
|
| Some v -> v
|
|
|
|
(* -- *** -- *)
|
|
|
|
(* TODO bin
|
|
- no [Bin.of_string] ? *)
|
|
let bin_of_string bin s =
|
|
let v = Bin.decode bin s (ref 0) in
|
|
Ok v
|