sig
type t
type day = Sun | Mon | Tue | Wed | Thu | Fri | Sat
type month =
Jan
| Feb
| Mar
| Apr
| May
| Jun
| Jul
| Aug
| Sep
| Oct
| Nov
| Dec
type year = int
type field = [ `Day | `Month | `Week | `Year ]
exception Out_of_bounds
exception Undefined
val make : year -> int -> int -> t
val lmake : year:year -> ?month:int -> ?day:int -> unit -> t
val today : unit -> t
val from_jd : int -> t
val from_mjd : int -> t
val from_day_of_year : year -> int -> t
val days_in_month : t -> int
val day_of_week : t -> day
val day_of_month : t -> int
val day_of_year : t -> int
val week : t -> int
val month : t -> month
val year : t -> year
val to_jd : t -> int
val to_mjd : t -> int
val equal : t -> t -> bool
val compare : t -> t -> int
val hash : t -> int
val is_valid_date : year -> int -> int -> bool
val is_leap_day : t -> bool
val is_gregorian : t -> bool
val is_julian : t -> bool
val to_unixtm : t -> Unix.tm
val from_unixtm : Unix.tm -> t
val to_unixfloat : t -> float
val from_unixfloat : float -> t
val to_business : t -> year * int * day
val from_business : year -> int -> day -> t
val int_of_day : day -> int
val day_of_int : int -> day
val int_of_month : month -> int
val month_of_int : int -> month
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 make : int -> int -> int -> t
val lmake : ?year:int -> ?month:int -> ?day:int -> unit -> t
val year : int -> t
val month : int -> t
val week : int -> t
val day : int -> t
exception Not_computable
val nb_days : t -> int
val ymd : t -> int * int * int
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
val is_leap_year : year -> bool
val same_calendar : year -> year -> bool
val days_in_year : ?month:month -> year -> int
val weeks_in_year : year -> int
val week_first_last : int -> year -> t * t
val nth_weekday_of_month : year -> month -> day -> int -> t
val century : year -> int
val millenium : year -> int
val solar_number : year -> int
val indiction : year -> int
val golden_number : year -> int
val epact : year -> int
val easter : year -> t
val carnaval : year -> t
val mardi_gras : year -> t
val ash : year -> t
val palm : year -> t
val easter_friday : year -> t
val easter_saturday : year -> t
val easter_monday : year -> t
val ascension : year -> t
val withsunday : year -> t
val withmonday : year -> t
val corpus_christi : year -> t
end