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