Timmy_jsoo.Timezone
include module type of Timmy.Timezone
A timezone.
A timezone.
type t = Timmy.Timezone.t
A timezone.
val of_gmt_offset_seconds : int -> t
of_gmt_offset_seconds s
is a timezone with a fixed offset of s
seconds from UTC. In other words, localtime = UTC + offset
.
val of_implementation :
offset_calendar_time_s:
(date:(int * int * int) -> time:(int * int * int) -> int) ->
offset_timestamp_s:(unix_timestamp:Stdlib.Int64.t -> int) ->
string ->
t
of_implementation ~offset_calendar_time_s ~offset_timestamp_s
builds a timezone by providing an implementation of the offset computation from both a date and a timestamp (in seconds).
val utc : t
utc
is the UTC timezone.
val gmt_offset_seconds_at_datetime :
t ->
date:(int * int * int) ->
time:(int * int * int) ->
int
gmt_offset_seconds_at_datetime tz ~date ~time
is the number of seconds that offset from UTC, for the given date (year, month, day) and time (hour, minute, second).
Note: In case of an ambiguous date, any of the two valid Time.t
will be picked depending on the implementation.
val gmt_offset_seconds_at_time : t -> Ptime.t -> int
gmt_offset_seconds_at_time tz timestamp
is the number of seconds that offset from UTC, at the time given by a unix timestamp (Ptime.t). In other words, localtime = UTC + offset
.
val name : t -> string
name tz
is the IANA name of tz
, if it could be determined.
val native : t
native
is a system specific implementation that relies on the underlying system to adjust for evolving timezones.