Lines Matching refs:rp

128 static zic_t	rpytime(const struct rule *rp, int wantedy);
129 static void rulesub(struct rule *rp,
744 register struct rule *rp;
783 rp = &rules[base];
785 if (strcmp(rp->r_name, rules[out].r_name) != 0)
789 if (strcmp(zp->z_rule, rp->r_name) != 0)
791 zp->z_rules = rp;
1263 rulesub(rp, loyearp, hiyearp, typep, monthp, dayp, timep)
1264 register struct rule * const rp;
1281 rp->r_month = lp->l_value;
1282 rp->r_todisstd = FALSE;
1283 rp->r_todisgmt = FALSE;
1289 rp->r_todisstd = TRUE;
1290 rp->r_todisgmt = FALSE;
1294 rp->r_todisstd = FALSE;
1295 rp->r_todisgmt = FALSE;
1301 rp->r_todisstd = TRUE;
1302 rp->r_todisgmt = TRUE;
1307 rp->r_tod = gethms(dp, gettext("invalid time of day"), FALSE);
1317 rp->r_loyear = INT_MIN;
1320 rp->r_loyear = INT_MAX;
1328 } else if (sscanf(cp, scheck(cp, "%d"), &rp->r_loyear) != 1) {
1332 if (rp->r_loyear < min_year_representable)
1335 else if (rp->r_loyear > max_year_representable)
1343 rp->r_hiyear = INT_MIN;
1346 rp->r_hiyear = INT_MAX;
1349 rp->r_hiyear = rp->r_loyear;
1357 } else if (sscanf(cp, scheck(cp, "%d"), &rp->r_hiyear) != 1) {
1361 if (rp->r_loyear < min_year_representable)
1364 else if (rp->r_loyear > max_year_representable)
1368 if (rp->r_loyear > rp->r_hiyear) {
1373 rp->r_yrtype = NULL;
1375 if (rp->r_loyear == rp->r_hiyear) {
1379 rp->r_yrtype = ecpyalloc(typep);
1381 if (rp->r_loyear < min_year && rp->r_loyear > 0)
1382 min_year = rp->r_loyear;
1393 rp->r_dycode = DC_DOWLEQ;
1394 rp->r_wday = lp->l_value;
1395 rp->r_dayofmonth = len_months[1][rp->r_month];
1398 rp->r_dycode = DC_DOWLEQ;
1400 rp->r_dycode = DC_DOWGEQ;
1403 rp->r_dycode = DC_DOM;
1405 if (rp->r_dycode != DC_DOM) {
1417 rp->r_wday = lp->l_value;
1419 if (sscanf(ep, scheck(ep, "%d"), &rp->r_dayofmonth) != 1 ||
1420 rp->r_dayofmonth <= 0 ||
1421 (rp->r_dayofmonth > len_months[1][rp->r_month])) {
1636 register struct rule *rp;
1695 * For those to do, calculate rpytime(rp, year);
1698 rp = &zp->z_rules[j];
1700 rp->r_filename, rp->r_linenum);
1701 rp->r_todo = year >= rp->r_loyear &&
1702 year <= rp->r_hiyear &&
1703 yearistype(year, rp->r_yrtype);
1704 if (rp->r_todo)
1705 rp->r_temp = rpytime(rp, year);
1733 rp = &zp->z_rules[j];
1734 if (!rp->r_todo)
1737 rp->r_filename, rp->r_linenum);
1738 offset = rp->r_todisgmt ? 0 : gmtoff;
1739 if (!rp->r_todisstd)
1741 jtime = rp->r_temp;
1753 rp = &zp->z_rules[k];
1754 rp->r_todo = FALSE;
1757 stdoff = rp->r_stdoff;
1765 rp->r_abbrvar,
1766 rp->r_stdoff != 0);
1773 rp->r_abbrvar,
1774 rp->r_stdoff != 0);
1778 rp->r_filename, rp->r_linenum);
1779 doabbr(buf, zp->z_format, rp->r_abbrvar,
1780 rp->r_stdoff != 0);
1781 offset = oadd(zp->z_gmtoff, rp->r_stdoff);
1782 type = addtype(offset, buf, rp->r_stdoff != 0,
1783 rp->r_todisstd, rp->r_todisgmt);
2146 rpytime(rp, wantedy)
2147 register const struct rule * const rp;
2171 while (m != rp->r_month) {
2176 i = rp->r_dayofmonth;
2178 if (rp->r_dycode == DC_DOWLEQ)
2187 if (rp->r_dycode == DC_DOWGEQ || rp->r_dycode == DC_DOWLEQ) {
2202 while (wday != eitol(rp->r_wday))
2203 if (rp->r_dycode == DC_DOWGEQ) {
2228 return (tadd(t, rp->r_tod));