(EMACS_TIME_CMP, EMACS_TIME_EQ, EMACS_TIME_NE)
authorGerd Moellmann <gerd@gnu.org>
Sun, 28 Nov 1999 20:11:56 +0000 (20:11 +0000)
committerGerd Moellmann <gerd@gnu.org>
Sun, 28 Nov 1999 20:11:56 +0000 (20:11 +0000)
(EMACS_TIME_GT, EMACS_TIME_GE, EMACS_TIME_LT,EMACS_TIME_LE): New
macros.

src/systime.h

index 44c1f7d..2675dee 100644 (file)
@@ -147,3 +147,22 @@ extern long timezone;
   (EMACS_SET_SECS (time, secs), EMACS_SET_USECS (time, usecs))
 
 extern int set_file_times ();
+
+/* Compare times T1 and T2.  Value is 0 if T1 and T2 are the same.
+   Value is < 0 if T1 is less than T2.  Value is > 0 otherwise.  */
+
+#define EMACS_TIME_CMP(T1, T2)                 \
+  (EMACS_SECS (T1) - EMACS_SECS (T2)           \
+   + (EMACS_SECS (T1) == EMACS_SECS (T2)       \
+      ? EMACS_USECS (T1) - EMACS_USECS (T2)    \
+      : 0))
+
+/* Compare times T1 and T2 for equality, inequality etc.  */
+
+#define EMACS_TIME_EQ(T1,T2) (EMACS_TIME_CMP (T1, T2) == 0)
+#define EMACS_TIME_NE(T1,T2) (EMACS_TIME_CMP (T1, T2) != 0)
+#define EMACS_TIME_GT(T1,T2) (EMACS_TIME_CMP (T1, T2) > 0)
+#define EMACS_TIME_GE(T1,T2) (EMACS_TIME_CMP (T1, T2) >= 0)
+#define EMACS_TIME_LT(T1,T2) (EMACS_TIME_CMP (T1, T2) < 0)
+#define EMACS_TIME_LE(T1,T2) (EMACS_TIME_CMP (T1, T2) <= 0)
+