From 7a724a02312acf7bf6df2bff93b80a79b2ad208d Mon Sep 17 00:00:00 2001
From: "Thomas G. Lockhart" <lockhart@fourpalms.org>
Date: Sat, 13 Feb 1999 04:15:33 +0000
Subject: [PATCH] Include some Julian date declarations to share between
 various date/time  modules. Used to be in dt.c I think.

---
 src/include/utils/dt.h   | 25 ++++++++++++++++++++++++-
 src/include/utils/int8.h |  9 ++++++---
 2 files changed, 30 insertions(+), 4 deletions(-)

diff --git a/src/include/utils/dt.h b/src/include/utils/dt.h
index 52802d99935..c7ba840c495 100644
--- a/src/include/utils/dt.h
+++ b/src/include/utils/dt.h
@@ -8,7 +8,7 @@
  *
  * Copyright (c) 1994, Regents of the University of California
  *
- * $Id: dt.h,v 1.34 1999/01/20 16:26:45 thomas Exp $
+ * $Id: dt.h,v 1.35 1999/02/13 04:15:33 thomas Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -262,6 +262,29 @@ extern int	datetime_is_epoch(double j);
 #define JROUND(j) (rint(((double) (j))*TIME_PREC_INV)/TIME_PREC_INV)
 
 
+
+/*
+ * Date/time validation
+ * Include check for leap year.
+ */
+
+extern int day_tab[2][13];
+
+#define isleap(y) (((y % 4) == 0 && (y % 100) != 0) || (y % 400) == 0)
+
+/* Julian date support for date2j() and j2date()
+ * Set the minimum year to one greater than the year of the first valid day
+ *  to avoid having to check year and day both. - tgl 97/05/08
+ */
+
+#define JULIAN_MINYEAR (-4713)
+#define JULIAN_MINMONTH (11)
+#define JULIAN_MINDAY (23)
+
+#define IS_VALID_JULIAN(y,m,d) ((y > JULIAN_MINYEAR) \
+ || ((y == JULIAN_MINYEAR) && ((m > JULIAN_MINMONTH) \
+  || ((m == JULIAN_MINMONTH) && (d >= JULIAN_MINDAY)))))
+
 /*
  * Date/time validation
  * Include check for leap year.
diff --git a/src/include/utils/int8.h b/src/include/utils/int8.h
index 9a276108305..9cc4dc0ccbf 100644
--- a/src/include/utils/int8.h
+++ b/src/include/utils/int8.h
@@ -6,7 +6,7 @@
  *
  * Copyright (c) 1994, Regents of the University of California
  *
- * $Id: int8.h,v 1.8 1998/09/11 17:16:11 momjian Exp $
+ * $Id: int8.h,v 1.9 1999/02/13 04:13:56 thomas Exp $
  *
  * NOTES
  * These data types are supported on all 64-bit architectures, and may
@@ -88,13 +88,16 @@ extern int64 *int48div(int32 val1, int64 * val2);
 extern int64 *int48(int32 val);
 extern int32 int84(int64 * val);
 
-#if FALSE
+#if NOT_USED
 extern int64 *int28 (int16 val);
 extern int16 int82(int64 * val);
-
 #endif
 
 extern float64 i8tod(int64 * val);
 extern int64 *dtoi8(float64 val);
 
+extern text *int8_text(int64 *val);
+extern int64 *text_int8(text *str);
+
 #endif	 /* INT8_H */
+
-- 
GitLab