Cldr.Timezone (Cldr v2.43.0)
View SourceFunctions to map between the CLDR short time zone code and the IANA timezone names.
The Unicode locale extension U allows the specification of the time zone requested for the provided locale.
This short timezone codes never change even if the IANA names change over time. Therefore these short codes are always stable between CLDR releases.
Summary
Functions
Returns a {:ok, list}
where list is a
list of IANA timezone names for
a given CLDR short zone code. If no such
short code exists then :error
is returned.
Returns a list of IANA time zone names for
a given CLDR short zone code, or nil
.
Returns a mapping of time zone IDs to their known territory.
Returns a mapping of CLDR short zone codes to IANA timezone names.
Returns a mapping of territories to their known IANA timezone names.
Types
@type short_zone() :: String.t()
@type timezone() :: %{ aliases: [String.t(), ...], preferred: nil | short_zone(), territory: Cldr.Locale.territory_code() }
Functions
Returns a {:ok, list}
where list is a
list of IANA timezone names for
a given CLDR short zone code. If no such
short code exists then :error
is returned.
Example
iex> Cldr.Timezone.fetch_short_zone("ausyd")
{
:ok,
%{
preferred: nil,
aliases: ["Australia/Sydney", "Australia/ACT", "Australia/Canberra", "Australia/NSW"],
territory: :AU
}
}
iex> Cldr.Timezone.fetch_short_zone("nope")
:error
Returns a list of IANA time zone names for
a given CLDR short zone code, or nil
.
The first time zone name in the list is the canonical time zone name.
Examples
iex> Cldr.Timezone.get_short_zone("ausyd")
%{
preferred: nil,
aliases: ["Australia/Sydney", "Australia/ACT", "Australia/Canberra", "Australia/NSW"],
territory: :AU
}
iex> Cldr.Timezone.get_short_zone("nope")
nil
Returns a mapping of time zone IDs to their known territory.
A time zone can only belong to one territory in CLDR.
Returns a mapping of CLDR short zone codes to IANA timezone names.
@spec timezones_by_territory() :: %{ ID: [timezone(), ...], NG: [timezone(), ...], MR: [timezone(), ...], IL: [timezone(), ...], HK: [timezone(), ...], LY: [timezone(), ...], VA: [timezone(), ...], PL: [timezone(), ...], MN: [timezone(), ...], GE: [timezone(), ...], AT: [timezone(), ...], TL: [timezone(), ...], KP: [timezone(), ...], LT: [timezone(), ...], ES: [timezone(), ...], DK: [timezone(), ...], TK: [timezone(), ...], SE: [timezone(), ...], TH: [timezone(), ...], SN: [timezone(), ...], RS: [timezone(), ...], BT: [timezone(), ...], LI: [timezone(), ...], BR: [timezone(), ...], KY: [timezone(), ...], TD: [timezone(), ...], LB: [timezone(), ...], SI: [timezone(), ...], GD: [timezone(), ...], PY: [timezone(), ...], MD: [timezone(), ...], FR: [timezone(), ...], PW: [timezone(), ...], JM: [timezone(), ...], KZ: [timezone(), ...], IT: [timezone(), ...], MY: [timezone(), ...], MK: [timezone(), ...], BH: [timezone(), ...], LU: [timezone(), ...], UM: [timezone(), ...], MO: [timezone(), ...], AG: [timezone(), ...], SL: [timezone(), ...], ZM: [timezone(), ...], MZ: [timezone(), ...], PM: [timezone(), ...], GH: [timezone(), ...], BI: [timezone(), ...], JO: [timezone(), ...], AU: [timezone(), ...], BJ: [timezone(), ...], SB: [timezone(), ...], AF: [timezone(), ...], BY: [timezone(), ...], CG: [timezone(), ...], GG: [timezone(), ...], KR: [timezone(), ...], PT: [timezone(), ...], GT: [timezone(), ...], BO: [timezone(), ...], CL: [timezone(), ...], CR: [timezone(), ...], BF: [timezone(), ...], PE: [timezone(), ...], EG: [timezone(), ...], SM: [timezone(), ...], NZ: [timezone(), ...], SD: [timezone(), ...], MV: [timezone(), ...], MC: [timezone(), ...], BQ: [timezone(), ...], RU: [timezone(), ...], EC: [timezone(), ...], CO: [timezone(), ...], AR: [timezone(), ...], BL: [timezone(), ...], CM: [timezone(), ...], CC: [timezone(), ...], VN: [timezone(), ...], MW: [timezone(), ...], BM: [timezone(), ...], VU: [timezone(), ...], BG: [timezone(), ...], SG: [timezone(), ...], SX: [timezone(), ...], PK: [timezone(), ...], TF: [timezone(), ...], AW: [timezone(), ...], OM: [timezone(), ...], AZ: [timezone(), ...], ML: [timezone(), ...], CZ: [timezone(), ...], DO: [timezone(), ...], UG: [timezone(), ...], KG: [timezone(), ...], EH: [timezone(), ...], WF: [timezone(), ...], IQ: [timezone(), ...], VC: [timezone(), ...], AD: [timezone(), ...], IO: [timezone(), ...], KH: [timezone(), ...], BE: [timezone(), ...], GL: [timezone(), ...], KW: [timezone(), ...], GB: [timezone(), ...], LV: [timezone(), ...], LR: [timezone(), ...], CI: [timezone(), ...], VI: [timezone(), ...], WS: [timezone(), ...], GP: [timezone(), ...], HN: [timezone(), ...], FO: [timezone(), ...], CY: [timezone(), ...], NF: [timezone(), ...], SY: [timezone(), ...], EE: [timezone(), ...], TC: [timezone(), ...], ET: [timezone(), ...], AQ: [timezone(), ...], TO: [timezone(), ...], BN: [timezone(), ...], IM: [timezone(), ...], MS: [timezone(), ...], MH: [timezone(), ...], TN: [timezone(), ...], GW: [timezone(), ...], HU: [timezone(), ...], MT: [timezone(), ...], CN: [timezone(), ...], VE: [timezone(), ...], NA: [timezone(), ...], DZ: [timezone(), ...], AI: [timezone(), ...], MU: [timezone(), ...], NL: [timezone(), ...], TV: [timezone(), ...], NP: [timezone(), ...], SS: [timezone(), ...], PR: [timezone(), ...], LC: [timezone(), ...], DE: [timezone(), ...], AX: [timezone(), ...], ST: [timezone(), ...], PN: [timezone(), ...], MP: [timezone(), ...], GY: [timezone(), ...], SO: [timezone(), ...], JE: [timezone(), ...], RW: [timezone(), ...], CW: [timezone(), ...], IE: [timezone(), ...], GA: [timezone(), ...], BB: [timezone(), ...], TM: [timezone(), ...], QA: [timezone(), ...], GU: [timezone(), ...], ZW: [timezone(), ...], TZ: [timezone(), ...], UZ: [timezone(), ...], SH: [timezone(), ...], YT: [timezone(), ...], SC: [timezone(), ...], MG: [timezone(), ...], ZA: [timezone(), ...], GM: [timezone(), ...], RO: [timezone(), ...], SA: [timezone(), ...], SR: [timezone(), ...], TR: [timezone(), ...], FJ: [timezone(), ...], BW: [timezone(), ...], MF: [timezone(), ...], ME: [timezone(), ...], AM: [timezone(), ...], LS: [timezone(), ...], LK: [timezone(), ...], GN: [timezone(), ...], LA: [timezone(), ...], PA: [timezone(), ...], PG: [timezone(), ...], YE: [timezone(), ...], AS: [timezone(), ...], NU: [timezone(), ...], BZ: [timezone(), ...], IR: [timezone(), ...], GR: [timezone(), ...], TJ: [timezone(), ...], NI: [timezone(), ...], UA: [timezone(), ...], NR: [timezone(), ...], CX: [timezone(), ...], US: [timezone(), ...], BS: [timezone(), ...], FI: [timezone(), ...], PF: [timezone(), ...], SJ: [timezone(), ...], RE: [timezone(), ...], IN: [timezone(), ...], HT: [timezone(), ...], GS: [timezone(), ...], KI: [timezone(), ...], MA: [timezone(), ...], PS: [timezone(), ...], NE: [timezone(), ...], CD: [timezone(), ...], IS: [timezone(), ...], BD: [timezone(), ...], GQ: [timezone(), ...], DM: [timezone(), ...], CF: [timezone(), ...], KM: [timezone(), ...], UY: [timezone(), ...], BA: [timezone(), ...], CK: [timezone(), ...], TW: [timezone(), ...], GI: [timezone(), ...], KE: [timezone(), ...], CH: [timezone(), ...], SK: [timezone(), ...], MQ: [timezone(), ...], SV: [timezone(), ...], NC: [timezone(), ...], VG: [timezone(), ...], JP: [timezone(), ...], TT: [timezone(), ...], AL: [timezone(), ...], HR: [timezone(), ...], PH: [timezone(), ...], CU: [timezone(), ...], CA: [timezone(), ...], KN: [timezone(), ...], NO: [timezone(), ...], CV: [timezone(), ...], FK: [timezone(), ...], FM: [timezone(), ...], MM: [timezone(), ...], DJ: [timezone(), ...], GF: [timezone(), ...], MX: [timezone(), ...], ER: [timezone(), ...], AO: [timezone(), ...], SZ: [timezone(), ...], TG: [timezone(), ...], AE: [timezone(), ...] }
Returns a mapping of territories to their known IANA timezone names.