aboutsummaryrefslogtreecommitdiff
path: root/src/include/utils/date.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/include/utils/date.h')
-rw-r--r--src/include/utils/date.h34
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 */
+
+
+