sig
type t
and field = [ `Hour | `Minute | `Second ]
val make : int -> int -> int -> Time.t
val lmake : ?hour:int -> ?minute:int -> ?second:int -> unit -> Time.t
val now : unit -> Time.t
val midnight : unit -> Time.t
val midday : unit -> Time.t
val convert : Time.t -> Time_Zone.t -> Time_Zone.t -> Time.t
val from_gmt : Time.t -> Time.t
val to_gmt : Time.t -> Time.t
val normalize : Time.t -> Time.t * int
val hour : Time.t -> int
val minute : Time.t -> int
val second : Time.t -> int
val to_seconds : Time.t -> int
val to_minutes : Time.t -> float
val to_hours : Time.t -> float
val compare : Time.t -> Time.t -> int
val is_pm : Time.t -> bool
val is_am : Time.t -> bool
val from_seconds : int -> Time.t
val from_minutes : float -> Time.t
val from_hours : float -> Time.t
module Period :
sig
type t
val empty : t
val add : t -> t -> t
val sub : t -> t -> t
val opp : t -> t
val compare : t -> t -> int
val length : Time.t -> int
val mul : Time.t -> Time.t -> Time.t
val div : Time.t -> Time.t -> Time.t
val make : int -> int -> int -> Time.t
val lmake : ?hour:int -> ?minute:int -> ?second:int -> unit -> Time.t
val hour : int -> Time.t
val minute : int -> Time.t
val second : int -> Time.t
val to_seconds : Time.t -> int
val to_minutes : Time.t -> float
val to_hours : Time.t -> float
end
val add : Time.t -> Time.Period.t -> Time.t
val sub : Time.t -> Time.t -> Time.Period.t
val rem : Time.t -> Time.Period.t -> Time.t
val next : Time.t -> Time.field -> Time.t
val prev : Time.t -> Time.field -> Time.t
end