AceTime  0.5
Date and time classes for Arduino that support timezones from the TZ Database, and a system clock that can synchronize from an NTP server or an RTC chip.
ZonePolicy.inc
1 /*
2  * MIT License
3  * Copyright (c) 2018 Brian T. Park
4  */
5 
11 struct ZoneRule {
16  static const int8_t kMaxYearTiny = 126;
17 
19  int8_t const fromYearTiny;
20 
22  int8_t const toYearTiny;
23 
25  uint8_t const inMonth;
26 
37  uint8_t const onDayOfWeek;
38 
43  int8_t const onDayOfMonth;
44 
49  uint8_t const atTimeCode;
50 
56  uint8_t const atTimeModifier;
57 
62  int8_t const deltaCode;
63 
80  uint8_t const letter;
81 };
82 
93 struct ZonePolicy {
94  uint8_t const numRules;
95  const ZoneRule* const rules;
96  uint8_t const numLetters;
97  const char* const* const letters;
98 };