[−][src]Crate tzparse
This library's functions are used to retrieve time changes and date/time characteristics for a given TZ. Based on data provided by system timezone files and low-level parsing library. System TZfiles default location can be overriden with the TZFILES_DIR environment variable.
There are two functions, one using the other's result:
get_timechanges
obtains time changes for specified year, or all time changes recorded in the TZfile if no year is specified.
get_zoneinfo
further parses the data to provide useful and human-readable output.
Example with get_zoneinfo:
extern crate tzparse; fn main() { match tzparse::get_timechanges("Europe/Paris", Some(2019)) { Some(tz) => println!("{:?}", tzparse::get_zoneinfo(&tz).unwrap()), None => println!("Timezone not found") }; }
Outputs:
{ utc_datetime: 2019-09-27T07:04:09.366157Z, datetime: 2019-09-27T09:04:09.366157+02:00,
dst_from: Some(2019-03-31T01:00:00Z), dst_until: Some(2019-10-27T01:00:00Z),
raw_offset: 3600, dst_offset: 7200, utc_offset: +02:00, abbreviation: "CEST" }
The get_timechanges used alone ouputs:
[Timechange { time: 2019-03-31T01:00:00Z, gmtoff: 7200, isdst: true, abbreviation: "CEST" },
Timechange { time: 2019-10-27T01:00:00Z, gmtoff: 3600, isdst: false, abbreviation: "CET" }]
Structs
Timechange | The Timechange struct contains one timechange from the parsed TZfile. |
Tzinfo | Convenient and human-readable informations about a timezone. |
Functions
get_timechanges | Returns year's timechanges for a timezone. If year is Some(0), returns current year's timechanges. If there's no timechange for selected year, returns the last occured timechange to see selected zone's applying parameters. If no year (None) is specified, returns all time changes recorded in the TZfile . |
get_zoneinfo | Returns convenient data about a timezone. |