• Home
  • Raw
  • Download

Lines Matching refs:ID

22 2. Next are the block infos, which hold metadata about all blocks in the file such as their ID,
23 a type ID, (optional) arbitrary "extra" bytes, and size / offset information for the block.
57 {start S2 cell ID (inclusive)}, {end S2 cell ID (exclusive)}, {time zone IDs}
60 The main usecase of the file is to lookup the time zone ID(s) (if any) for a given S2 cell ID.
67 stored using only a subset of the bits needed to store a full S2 cell ID.
69 Each logical S2 range data described above is subdivided into ranges with a common S2 cell ID
73 The time zone ID strings are also only stored once and are referenced indirectly, avoiding repeated
79 Suffix table block IDs are calculated by taking the prefix of the S2 cell ID being sought and
81 directly using the block's ID.
85 The `{prefix}` is computed by extracting the first `{X}` bits of the S2 cell ID. The `{prefix}` is
86 used to obtain the `{block ID}` of the block used to store the suffix table. The `{block ID}` is
87 calculated by adding a fixed offset (obtained from the header block) to the cell ID `{prefix}`.
89 The `{block ID}` is first used to look lookup the block info. If the length of the block with
90 `{block ID}` is zero, the lookup stops at this point as it means there are no ranges for `{prefix}`.
92 When the `{block ID}` block is non-zero length, the block is interpreted as a packed table
95 The `{suffix}`, the final `{Y}` bits of the search S2 cell ID, is used to seek for a record
96 containing the s2 range holding that cell ID, if any. The `{suffix}` will match either no records or
105 ID (1).
109 contains information shared by all blocks such as the TZ ID sets.
111 TZ ID Sets storage
137 Every time zone ID string referenced in the file is assigned a numeric ID. The string is stored once
138 in the file in the header block. All references to time zone IDs are made via the numeric ID.
158 Via this indirection and banking, each range entry can address a set of time zone ID strings using
159 only a numeric bank ID and a numeric set ID. The bank ID is the same for all entries in suffix
160 table, so this means that it can be stored once per table and only the (small) `{TZ IDs set ID}`
171 {TZ IDs set bank} - the bank ID of the TZ IDs set bank used when looking up time zone set IDs
177 {start S2 cell ID (inclusive)}, {end S2 cell ID (exclusive)}, {time zone IDs}`
183 The `{key}` for an entry contains only the `{suffix}` bits from the `{start S2 cell ID
184 (inclusive)}`. To reconstruct the `{start S2 cell ID (inclusive)}` it's only necessary to know
188 sub-divided into two: the `{end S2 cell ID offset}` and the `{TZ IDs set ID}`.
190 The `{end S2 cell ID offset}` is a transformation of the `{end S2 cell ID (exclusive)}`. The `{end
191 S2 cell ID}` can be calculated by adding the `{end S2 cell ID offset}` to the `{start S2 cell ID
194 When searching for an S2 cell ID, the prefix is used to locate the correct suffix table. The suffix
195 bits from the S2 cell ID can be extracted. Since all data in the table is held at a single S2 level,
198 `{end S2 cell ID offset}` value.
200 If an entry is found, the `{TZ set ID}` indirectly leads to the `{time zone IDs}` for the range. For
201 more information see TZ ID Sets storage above.