diff --git a/src/postrr.h.in b/src/postrr.h.in
index 95582db6eaf3a7d22f2f311f0fb2fb0cef1cf0d6..d9df4af255258897d55faecec38ffd68e73ae6eb 100644 (file)
--- a/src/postrr.h.in
+++ b/src/postrr.h.in
/* casts */
Datum
rrtimeslice_to_rrtimeslice(PG_FUNCTION_ARGS);
+Datum
+rrtimeslice_to_timestamptz(PG_FUNCTION_ARGS);
/* comparison operators */
Datum
-rrtimeslice_eq(PG_FUNCTION_ARGS);
+rrtimeslice_cmp(PG_FUNCTION_ARGS);
+
+/* sequence comparison operators */
Datum
-rrtimeslice_ne(PG_FUNCTION_ARGS);
+rrtimeslice_seq_eq(PG_FUNCTION_ARGS);
Datum
-rrtimeslice_lt(PG_FUNCTION_ARGS);
+rrtimeslice_seq_ne(PG_FUNCTION_ARGS);
Datum
-rrtimeslice_le(PG_FUNCTION_ARGS);
+rrtimeslice_seq_lt(PG_FUNCTION_ARGS);
Datum
-rrtimeslice_gt(PG_FUNCTION_ARGS);
+rrtimeslice_seq_le(PG_FUNCTION_ARGS);
Datum
-rrtimeslice_ge(PG_FUNCTION_ARGS);
+rrtimeslice_seq_gt(PG_FUNCTION_ARGS);
Datum
-rrtimeslice_cmp(PG_FUNCTION_ARGS);
+rrtimeslice_seq_ge(PG_FUNCTION_ARGS);
+Datum
+rrtimeslice_seq_cmp(PG_FUNCTION_ARGS);
+Datum
+rrtimeslice_seq_hash(PG_FUNCTION_ARGS);
/*
* internal (not fmgr-callable) functions
*/
+/*
+ * compare two RRTimeslices
+ *
+ * returns:
+ * - -2 if ts1 < ts2 (sequence numbers don't match)
+ * - -1 if ts1 < ts2 (sequence numbers match)
+ * - 0 if ts1 = ts2
+ * - 1 if ts1 > ts2 (sequence numbers match)
+ * - 2 if ts1 > ts2 (sequence numbers don't match)
+ */
int
rrtimeslice_cmp_internal(rrtimeslice_t *ts1, rrtimeslice_t *ts2);
+/*
+ * compare sequence numbers of two RRTimeslices
+ *
+ * returns:
+ * - -1 if ts1 < ts2
+ * - 0 if ts1 = ts2
+ * - 1 if ts1 > ts2
+ */
+int
+rrtimeslice_seq_cmp_internal(rrtimeslice_t *ts1, rrtimeslice_t *ts2);
+
/*
* CData data type
*/
/* casts */
Datum
cdata_to_cdata(PG_FUNCTION_ARGS);
+Datum
+int32_to_cdata(PG_FUNCTION_ARGS);
+Datum
+cdata_to_float8(PG_FUNCTION_ARGS);
+
+/* aux. functions */
+Datum
+cdata_update(PG_FUNCTION_ARGS);
#endif /* ! POSTRR_H */