AceTime  3.0.0
Date and time classes for Arduino that support timezones from the TZ Database.
zone_policies.h
1 // This file was generated by the following script:
2 //
3 // $ /home/brian/src/AceTimeSuite/compiler/src/acetimecompiler/tzcompiler.py
4 // --input_dir /home/brian/src/AceTimeSuite/libraries/AceTimeLib/src/zonedb/tzfiles
5 // --output_dir /home/brian/src/AceTimeSuite/libraries/AceTimeLib/src/zonedb
6 // --tz_version 2025b
7 // --action zonedb
8 // --language arduino
9 // --scope basic
10 // --db_namespace zonedb
11 // --zi_namespace basic::Info
12 // --start_year 2000
13 // --until_year 2200
14 //
15 // using the TZ Database files
16 //
17 // africa
18 // antarctica
19 // asia
20 // australasia
21 // backward
22 // etcetera
23 // europe
24 // northamerica
25 // southamerica
26 //
27 // from https://github.com/eggert/tz/releases/tag/2025b
28 //
29 // Supported Zones: 446 (215 zones, 231 links)
30 // Unsupported Zones: 151 (125 zones, 26 links)
31 //
32 // Requested Years: [2000,2200]
33 // Accurate Years: [2000,32767]
34 //
35 // Original Years: [1844,2087]
36 // Generated Years: [1950,2023]
37 // Lower/Upper Truncated: [True,False]
38 //
39 // Estimator Years: [1950,2025]
40 // Max Buffer Size: 6
41 //
42 // Records:
43 // Infos: 446
44 // Eras: 227
45 // Policies: 63
46 // Rules: 352
47 //
48 // Memory (8-bits):
49 // Context: 16
50 // Rules: 3168
51 // Policies: 189
52 // Eras: 2497
53 // Zones: 2795
54 // Links: 3003
55 // Registry: 892
56 // Formats: 175
57 // Letters: 29
58 // Fragments: 116
59 // Names: 4142 (original: 6494)
60 // TOTAL: 17022
61 //
62 // Memory (32-bits):
63 // Context: 24
64 // Rules: 4224
65 // Policies: 504
66 // Eras: 3632
67 // Zones: 5160
68 // Links: 5544
69 // Registry: 1784
70 // Formats: 175
71 // Letters: 41
72 // Fragments: 138
73 // Names: 4142 (original: 6494)
74 // TOTAL: 25368
75 //
76 // DO NOT EDIT
77 
78 #ifndef ACE_TIME_ZONEDB_ZONE_POLICIES_H
79 #define ACE_TIME_ZONEDB_ZONE_POLICIES_H
80 
81 #include <zoneinfo/infos.h>
82 
83 namespace ace_time {
84 namespace zonedb {
85 
86 //---------------------------------------------------------------------------
87 // Supported policies: 63
88 //---------------------------------------------------------------------------
89 
90 extern const basic::Info::ZonePolicy kZonePolicyAN;
91 extern const basic::Info::ZonePolicy kZonePolicyAQ;
92 extern const basic::Info::ZonePolicy kZonePolicyAS;
93 extern const basic::Info::ZonePolicy kZonePolicyAT;
94 extern const basic::Info::ZonePolicy kZonePolicyAV;
95 extern const basic::Info::ZonePolicy kZonePolicyAW;
96 extern const basic::Info::ZonePolicy kZonePolicyArmenia;
97 extern const basic::Info::ZonePolicy kZonePolicyAus;
98 extern const basic::Info::ZonePolicy kZonePolicyAzer;
99 extern const basic::Info::ZonePolicy kZonePolicyBarb;
100 extern const basic::Info::ZonePolicy kZonePolicyBelize;
101 extern const basic::Info::ZonePolicy kZonePolicyBrazil;
102 extern const basic::Info::ZonePolicy kZonePolicyCO;
103 extern const basic::Info::ZonePolicy kZonePolicyCR;
104 extern const basic::Info::ZonePolicy kZonePolicyCanada;
105 extern const basic::Info::ZonePolicy kZonePolicyChatham;
106 extern const basic::Info::ZonePolicy kZonePolicyChile;
107 extern const basic::Info::ZonePolicy kZonePolicyCook;
108 extern const basic::Info::ZonePolicy kZonePolicyCuba;
109 extern const basic::Info::ZonePolicy kZonePolicyDhaka;
110 extern const basic::Info::ZonePolicy kZonePolicyEU;
111 extern const basic::Info::ZonePolicy kZonePolicyEUAsia;
112 extern const basic::Info::ZonePolicy kZonePolicyEcuador;
113 extern const basic::Info::ZonePolicy kZonePolicyEire;
114 extern const basic::Info::ZonePolicy kZonePolicyFiji;
115 extern const basic::Info::ZonePolicy kZonePolicyGuat;
116 extern const basic::Info::ZonePolicy kZonePolicyHK;
117 extern const basic::Info::ZonePolicy kZonePolicyHaiti;
118 extern const basic::Info::ZonePolicy kZonePolicyHoliday;
119 extern const basic::Info::ZonePolicy kZonePolicyHond;
120 extern const basic::Info::ZonePolicy kZonePolicyIran;
121 extern const basic::Info::ZonePolicy kZonePolicyIraq;
122 extern const basic::Info::ZonePolicy kZonePolicyJapan;
123 extern const basic::Info::ZonePolicy kZonePolicyJordan;
124 extern const basic::Info::ZonePolicy kZonePolicyLH;
125 extern const basic::Info::ZonePolicy kZonePolicyLebanon;
126 extern const basic::Info::ZonePolicy kZonePolicyMacau;
127 extern const basic::Info::ZonePolicy kZonePolicyMauritius;
128 extern const basic::Info::ZonePolicy kZonePolicyMexico;
129 extern const basic::Info::ZonePolicy kZonePolicyMoldova;
130 extern const basic::Info::ZonePolicy kZonePolicyMoncton;
131 extern const basic::Info::ZonePolicy kZonePolicyMongol;
132 extern const basic::Info::ZonePolicy kZonePolicyNC;
133 extern const basic::Info::ZonePolicy kZonePolicyNZ;
134 extern const basic::Info::ZonePolicy kZonePolicyNamibia;
135 extern const basic::Info::ZonePolicy kZonePolicyNic;
136 extern const basic::Info::ZonePolicy kZonePolicyPRC;
137 extern const basic::Info::ZonePolicy kZonePolicyPakistan;
138 extern const basic::Info::ZonePolicy kZonePolicyPeru;
139 extern const basic::Info::ZonePolicy kZonePolicyPhil;
140 extern const basic::Info::ZonePolicy kZonePolicyROK;
141 extern const basic::Info::ZonePolicy kZonePolicyRussiaAsia;
142 extern const basic::Info::ZonePolicy kZonePolicySA;
143 extern const basic::Info::ZonePolicy kZonePolicySalv;
144 extern const basic::Info::ZonePolicy kZonePolicyTaiwan;
145 extern const basic::Info::ZonePolicy kZonePolicyThule;
146 extern const basic::Info::ZonePolicy kZonePolicyTonga;
147 extern const basic::Info::ZonePolicy kZonePolicyTunisia;
148 extern const basic::Info::ZonePolicy kZonePolicyUS;
149 extern const basic::Info::ZonePolicy kZonePolicyUruguay;
150 extern const basic::Info::ZonePolicy kZonePolicyVanuatu;
151 extern const basic::Info::ZonePolicy kZonePolicyWinn;
152 extern const basic::Info::ZonePolicy kZonePolicyZion;
153 
154 
155 //---------------------------------------------------------------------------
156 // Unsupported policies: 71
157 //---------------------------------------------------------------------------
158 
159 // Albania {unused}
160 // Algeria {unused}
161 // Arg {unused}
162 // Austria {unused}
163 // Belgium {unused}
164 // Bermuda {unused}
165 // Bulg {unused}
166 // C-Eur {unused}
167 // CA {unused}
168 // Chicago {unused}
169 // Cyprus {unused}
170 // Czech {unused}
171 // DR {unused}
172 // Denver {unused}
173 // Detroit {unused}
174 // E-Eur {unused}
175 // E-EurAsia {unused}
176 // Edm {unused}
177 // Egypt {Found 2 transitions in year/month '2010-09'}
178 // EgyptAsia {unused}
179 // Falk {unused}
180 // Finland {unused}
181 // France {unused}
182 // GB-Eire {unused}
183 // Germany {unused}
184 // Greece {unused}
185 // Guam {unused}
186 // Halifax {unused}
187 // Hungary {unused}
188 // Indianapolis {unused}
189 // Italy {unused}
190 // Kyrgyz {unused}
191 // Latvia {unused}
192 // Libya {unused}
193 // Louisville {unused}
194 // Malta {unused}
195 // Marengo {unused}
196 // Menominee {unused}
197 // Morocco {unused}
198 // NBorneo {unused}
199 // NT_YK {unused}
200 // NYC {unused}
201 // Palestine {Found 2 transitions in year/month '2074-10'}
202 // Para {unused}
203 // Perry {unused}
204 // Pike {unused}
205 // Poland {unused}
206 // Port {unused}
207 // Pulaski {unused}
208 // Regina {unused}
209 // Romania {unused}
210 // Russia {unused}
211 // SanLuis {unused}
212 // Shang {unused}
213 // SovietZone {unused}
214 // Spain {unused}
215 // SpainAfrica {unused}
216 // StJohns {unused}
217 // Starke {unused}
218 // Sudan {unused}
219 // Swift {unused}
220 // Swiss {unused}
221 // Syria {unused}
222 // Toronto {unused}
223 // Troll {unused}
224 // Turkey {unused}
225 // Vanc {unused}
226 // Vincennes {unused}
227 // W-Eur {unused}
228 // WS {unused}
229 // Yukon {unused}
230 
231 
232 //---------------------------------------------------------------------------
233 // Notable zone policies: 5
234 //---------------------------------------------------------------------------
235 
236 // Belize {LETTER 'CST' not single character}
237 // Eire {SAVE '-1:00' is a negative DST}
238 // LH {SAVE '0:30' different from 1:00}
239 // Moncton {AT '0:01' not multiple of :15 min}
240 // Namibia {
241 // LETTER 'CAT' not single character,
242 // LETTER 'WAT' not single character,
243 // SAVE '-1:00' is a negative DST,
244 // }
245 
246 
247 }
248 }
249 
250 #endif