Support special values 'now', 'current', etc on output.

This commit is contained in:
Thomas G. Lockhart 1997-10-09 05:02:17 +00:00
parent f54cc390e1
commit 8fe55efd7b
1 changed files with 25 additions and 23 deletions

View File

@ -29,13 +29,33 @@ timestamp_out(time_t timestamp)
char zone[MAXDATELEN + 1],
*tzn = zone;
abstime2tm(timestamp, &tz, tm, tzn);
EncodeDateTime(tm, fsec, &tz, &tzn, USE_ISO_DATES, buf);
switch (timestamp)
{
case EPOCH_ABSTIME:
strcpy(buf, EPOCH);
break;
case INVALID_ABSTIME:
strcpy(buf, INVALID);
break;
case CURRENT_ABSTIME:
strcpy(buf, DCURRENT);
break;
case NOEND_ABSTIME:
strcpy(buf, LATE);
break;
case NOSTART_ABSTIME:
strcpy(buf, EARLY);
break;
default:
abstime2tm(timestamp, &tz, tm, tzn);
EncodeDateTime(tm, fsec, &tz, &tzn, USE_ISO_DATES, buf);
break;
}
result = palloc(strlen(buf) + 1);
strcpy(result, buf);
return result;
}
} /* timestamp_out() */
time_t
now(void)
@ -49,58 +69,40 @@ now(void)
bool
timestampeq(time_t t1, time_t t2)
{
#if FALSE
return(t1 == t2);
#endif
return(abstimeeq(t1,t2));
}
bool
timestampne(time_t t1, time_t t2)
{
#if FALSE
return(t1 != t2);
#endif
return(abstimene(t1,t2));
}
bool
timestamplt(time_t t1, time_t t2)
{
#if FALSE
return(t1 > t2);
#endif
return(abstimelt(t1,t2));
}
bool
timestampgt(time_t t1, time_t t2)
{
#if FALSE
return(t1 < t2);
#endif
return(abstimegt(t1,t2));
}
bool
timestample(time_t t1, time_t t2)
{
#if FALSE
return(t1 >= t2);
#endif
return(abstimele(t1,t2));
}
bool
timestampge(time_t t1, time_t t2)
{
#if FALSE
return(t1 <= t2);
#endif
return(abstimege(t1,t2));
}
DateTime *
DateTime *
timestamp_datetime(time_t timestamp)
{
DateTime *result;