Crate zoneinfo_parse [−] [src]
Rust library for reading the text files comprising the zoneinfo database, which records time zone changes and offsets across the world from multiple sources.
The zoneinfo database is distributed in one of two formats: a raw text
format with one file per continent, and a compiled binary format with one
file per time zone. This crate deals with the former; for the latter, see
zoneinfo_compiled crate instead.
Reading a zoneinfo text file is split into three stages:
- Parsing individual lines of text into
Linesis done by the
- Interpreting these lines into a complete
Tableis done by the
- Calculating transitions from this table is done by the
Parsing zoneinfo data files, line-by-line.
Determining the structure of a set of ruleset names.
Collecting parsed zoneinfo data lines into a set of time zone data.
Generating timespan sets from a built Table.