68 constexpr
clock_t operator "" _h(
unsigned long long h)
78 constexpr
clock_t operator "" _min(
unsigned long long min)
88 constexpr
clock_t operator "" _s(
unsigned long long s)
116 __attribute__((always_inline))
126 __attribute__((always_inline))
161 uint16_t
days()
const;
211 if (year % 4)
return false;
212 uint16_t y = year % 400;
213 return (y == 0) || ((y != 100) && (y != 200) && (y != 300));
244 (1 <= month) && (month <= 12) &&
246 ((date <= pgm_read_byte(&
days_in[month])) ||
247 ((month == 2) &&
is_leap() && (date == 29)))) &&
248 (1 <= day) && (day <= 7) &&
309 } __attribute__((packed));
const uint8_t POSIX_EPOCH_WEEKDAY
static const uint8_t days_in[]
const uint16_t Y2K_EPOCH_YEAR
uint8_t minutes
00-59 Minutes.
static uint16_t epoch_year()
static uint8_t pivot_year
static uint16_t full_year(uint8_t year)
uint8_t month
01-12 Month.
static uint16_t days_per(uint16_t year)
const uint8_t Y2K_EPOCH_WEEKDAY
const uint16_t NTP_EPOCH_YEAR
static uint8_t epoch_weekday
const class prog_str * str_P
const uint32_t SECONDS_PER_DAY
IOStream & operator<<(IOStream &outs, const time_t &t)
const uint8_t SECONDS_PER_MINUTE
uint8_t seconds
00-59 Seconds.
const uint16_t POSIX_EPOCH_YEAR
const uint8_t DAYS_PER_WEEK
static void use_fastest_epoch()
uint8_t hours
00-23 Hours.
static bool is_leap(uint16_t year)
static uint8_t epoch_offset
uint16_t full_year() const
uint16_t day_of_year() const
const uint8_t NTP_EPOCH_WEEKDAY
static void epoch_year(uint16_t y)
static uint8_t weekday_for(uint16_t dayno)
static uint16_t s_epoch_year
const uint16_t SECONDS_PER_HOUR