56 lines
1.1 KiB
OCaml
56 lines
1.1 KiB
OCaml
module TimeRelative : sig
|
|
type t
|
|
|
|
val forever : t
|
|
val zero : t
|
|
val compare : t -> t -> int
|
|
val min : t -> t -> t
|
|
val max : t -> t -> t
|
|
val add : t -> t -> t
|
|
val sub : t -> t -> t
|
|
val of_s : int64 -> t
|
|
|
|
(* - *)
|
|
val bin : t Bin.t
|
|
val caqti : t Caqti_type.t
|
|
val jsont : t Jsont.t
|
|
end
|
|
|
|
module TimeAbsolute : sig
|
|
type t
|
|
|
|
val never : t
|
|
val zero : t
|
|
val compare : t -> t -> int
|
|
val min : t -> t -> t
|
|
val max : t -> t -> t
|
|
val diff : t -> t -> TimeRelative.t
|
|
val add : t -> TimeRelative.t -> t
|
|
val sub : t -> TimeRelative.t -> t
|
|
val of_s : int64 -> t
|
|
val of_ptime : Ptime.t -> t
|
|
end
|
|
|
|
module Timestamp : sig
|
|
type t
|
|
|
|
val never : t
|
|
val zero : t
|
|
val compare : t -> t -> int
|
|
val equal : t -> t -> bool
|
|
val min : t -> t -> t
|
|
val max : t -> t -> t
|
|
val diff : t -> t -> TimeRelative.t
|
|
val of_s : int64 -> t
|
|
|
|
(* none if t = never *)
|
|
val to_s : t -> int64 option
|
|
val of_absolute : TimeAbsolute.t -> t
|
|
val of_ptime : Ptime.t -> t
|
|
|
|
(* TODO add pp *)
|
|
(* - *)
|
|
val bin : t Bin.t
|
|
val caqti : t Caqti_type.t
|
|
val jsont : t Jsont.t
|
|
end
|