void timelib_do_normalize(timelib_time* time) { if (time->s != TIMELIB_UNSET) do {} while (do_range_limit(0, 60, 60, &time->s, &time->i)); if (time->s != TIMELIB_UNSET) do {} while (do_range_limit(0, 60, 60, &time->i, &time->h)); if (time->s != TIMELIB_UNSET) do {} while (do_range_limit(0, 24, 24, &time->h, &time->d)); do {} while (do_range_limit(1, 13, 12, &time->m, &time->y)); do {} while (do_range_limit_days(&time->y, &time->m, &time->d)); do {} while (do_range_limit(1, 13, 12, &time->m, &time->y)); }
static void do_normalize(timelib_time* time) { do {} while (do_range_limit(0, 60, 60, &time->s, &time->i)); do {} while (do_range_limit(0, 60, 60, &time->i, &time->h)); do {} while (do_range_limit(0, 24, 24, &time->h, &time->d)); do {} while (do_range_limit(1, 13, 12, &time->m, &time->y)); do {} while (do_range_limit_days(&time->y, &time->m, &time->d)); do {} while (do_range_limit(1, 13, 12, &time->m, &time->y)); }
void timelib_do_normalize(timelib_time* time) { if (time->us != TIMELIB_UNSET) do_range_limit_fraction(&time->us, &time->s); if (time->s != TIMELIB_UNSET) do_range_limit(0, 60, 60, &time->s, &time->i); if (time->s != TIMELIB_UNSET) do_range_limit(0, 60, 60, &time->i, &time->h); if (time->s != TIMELIB_UNSET) do_range_limit(0, 24, 24, &time->h, &time->d); do_range_limit(1, 13, 12, &time->m, &time->y); /* Short cut if we're doing things against the Epoch */ if (time->y == 1970 && time->m == 1 && time->d != 1) { magic_date_calc(time); } do {} while (do_range_limit_days(&time->y, &time->m, &time->d)); do_range_limit(1, 13, 12, &time->m, &time->y); }