CalendarLib.Time_Zone
Time zone management.
You can change
the current
time zone in your program by side effect.
type t =
| UTC | (* Greenwich Meridian Time *) |
| Local | (* Local Time *) |
| UTC_Plus of int | (* Another time zone specified from UTC *) |
Type of a time zone.
val current : unit -> t
Return the current time zone. It is UTC
before any change.
val change : t -> unit
Change the current time zone by another one. Raise Invalid_argument
if the specified time zone is UTC_Plus x
with x < -12
or x > 11
Return the gap between two time zone. @example gap UTC (UTC_Plus 5)
returns 5 and, at Paris in summer, gap Local UTC
returns -2.
is_dst ()
checks if daylight saving time is in effect. Only relevant in local time. Returns alway false
in another time zone.
val on : ( 'a -> 'b ) -> t -> 'a -> 'b
on f tz x
changes the time zone to tz
, then computes f x
, and finally reset the time zone to the initial one and returns the result of the computation.