diff options
Diffstat (limited to 'src/include/utils/date.h')
-rw-r--r-- | src/include/utils/date.h | 34 |
1 files changed, 32 insertions, 2 deletions
diff --git a/src/include/utils/date.h b/src/include/utils/date.h index 003ee2e0265..b474634a384 100644 --- a/src/include/utils/date.h +++ b/src/include/utils/date.h @@ -7,7 +7,7 @@ * Portions Copyright (c) 1996-2000, PostgreSQL, Inc * Portions Copyright (c) 1994, Regents of the University of California * - * $Id: date.h,v 1.1 2000/02/16 17:26:26 thomas Exp $ + * $Id: date.h,v 1.2 2000/03/14 23:06:50 thomas Exp $ * *------------------------------------------------------------------------- */ @@ -18,6 +18,12 @@ typedef int32 DateADT; typedef float8 TimeADT; +typedef struct +{ + double time; /* all time units other than months and years */ + int4 zone; /* numeric time zone, in seconds */ +} TimeTzADT; + /* date.c */ extern DateADT date_in(char *datestr); extern char *date_out(DateADT dateVal); @@ -46,7 +52,31 @@ extern bool time_lt(TimeADT *time1, TimeADT *time2); extern bool time_le(TimeADT *time1, TimeADT *time2); extern bool time_gt(TimeADT *time1, TimeADT *time2); extern bool time_ge(TimeADT *time1, TimeADT *time2); -extern int time_cmp(TimeADT *time1, TimeADT *time2); +extern int time_cmp(TimeADT *time1, TimeADT *time2); +extern bool overlaps_time(TimeADT *time1, TimeADT *time2, + TimeADT *time3, TimeADT *time4); +extern TimeADT *time_larger(TimeADT *time1, TimeADT *time2); +extern TimeADT *time_smaller(TimeADT *time1, TimeADT *time2); extern TimeADT *timestamp_time(Timestamp *timestamp); +extern Interval *time_interval(TimeADT *time); + +extern TimeTzADT *timetz_in(char *timestr); +extern char *timetz_out(TimeTzADT *time); +extern bool timetz_eq(TimeTzADT *time1, TimeTzADT *time2); +extern bool timetz_ne(TimeTzADT *time1, TimeTzADT *time2); +extern bool timetz_lt(TimeTzADT *time1, TimeTzADT *time2); +extern bool timetz_le(TimeTzADT *time1, TimeTzADT *time2); +extern bool timetz_gt(TimeTzADT *time1, TimeTzADT *time2); +extern bool timetz_ge(TimeTzADT *time1, TimeTzADT *time2); +extern int timetz_cmp(TimeTzADT *time1, TimeTzADT *time2); +extern bool overlaps_timetz(TimeTzADT *time1, TimeTzADT *time2, + TimeTzADT *time3, TimeTzADT *time4); +extern TimeTzADT *timetz_larger(TimeTzADT *time1, TimeTzADT *time2); +extern TimeTzADT *timetz_smaller(TimeTzADT *time1, TimeTzADT *time2); +extern TimeTzADT *timestamp_timetz(Timestamp *timestamp); +extern Timestamp *datetimetz_timestamp(DateADT date, TimeTzADT *time); #endif /* DATE_H */ + + + |